![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
![]()
Сообщение
#1
|
|
Участник ![]() ![]() Группа: Пользователь Сообщений: 55 Регистрация: 13.02.2010 Пользователь №: 9767 ![]() |
Когда переменная объявлена в функции, когда она освободит память!?
function test() { var v:Int=10; } Как освободить память, которую занимает созданный класс!? var my = new myClass(); |
|
|
![]() |
![]()
Сообщение
#2
|
|
Заряд: 100% ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 1118 Регистрация: 12.03.2008 Пользователь №: 4145 ![]() |
Память вообще очищает Garbage Collector (Сборщик Мусора) когда приходит время (его также можно вызвать вручную). Чтобы GC удалил объект из памяти надо убрать все имеющиеся на него ссылки и обнулить собственно.
Код my = null; P. S. "Int" с маленькой буквы - int |
|
|
![]()
Сообщение
#3
|
|
Новичок ![]() Группа: Новичок Сообщений: 3 Регистрация: 13.04.2011 Пользователь №: 10443 ![]() |
Пробовал обнулить, все равно память увеличивается..
Код package { import flash.display.Sprite; /** * ... * @author alonzo */ public class AudioList extends Sprite { private var _songs_items:Vector.<AudioItem>; private var showingItems:Vector.<AudioItem>; private var list:Sprite; private var itemCount:int; private var itemH:int; private var itemW:int; private var border_color:int = 0xDCE4F5; private var bground_color:int = 0xDCE4F5; public function AudioList(_w:int, _h:int, _count:int) { itemW = _w; itemH = _h; itemCount = _count; _songs_items = new Vector.<AudioItem>(); showingItems = new Vector.<AudioItem>(); list = new Sprite(); this.addChild(list); } public function Draw():void { Clear(); list = new Sprite(); var q:int; var _y:int = 1; for (q = 0; q < itemCount; q++ ) { if ( q < _songs_items.length){ _songs_items[q].y = _y; list.addChild(_songs_items[q]); showingItems.push(_songs_items[q]); _y += _songs_items[0].itemH + 1; } } this.addChild(list); } public function Clear():void { this.removeChild(list); list = null; } public function addSong(ArtistName:String, SongName:String, Url:String):void { _songs_items.push(new AudioItem(itemW, itemH, ArtistName, SongName, Url)); Draw(); } } } Когда вызываю перерисовку несколько раз ( метод Draw() ) то в диспечере задач можно увидеть как память программы увеличивается. P. S Только начал изучать флеш) |
|
|
![]()
Сообщение
#4
|
|
![]() Ветеран конференции ![]() ![]() ![]() ![]() ![]() Группа: Пользователь Сообщений: 1181 Регистрация: 27.02.2009 Из: Moscow Пользователь №: 9144 ![]() |
-------------------- |
|
|
![]() ![]() |
![]() |
Текстовая версия | Сейчас: 1.08.2014 - 00:53 |