![]() |
как почистить память?
И снова здравутвуйте! :)
у меня такой ворос: при большом объёме вычислений (в смысле создаю огромный массив в памяти, более 100 метров, к примеру) потом обсчитываю его. Потом он не нужен и можно его удалить. Удаляю. Память не освобождается. Как освободить память? Также пробовал хранить массив в отдельной СВФке и грузить её в другую, когда не нужен - выгружать.unloadMovie() - результат нулевой! В поиске тоже был там для себя отметил, что Флэш - это "чёрный ящик" и в нём есть "мусорщик". Правда не понятно, как заставить этого мусорщика убирацца :confused: |
А delete не помогает?
|
не помогает.
помню: в 6-ом Флэше помогал. дело происходит так (если убрать всё лишнее): в свф "c.swf" грузится свф "v.swf" в "v.swf" на главной сцене зацикленный мувик "s1", в котором в первом кадре: Код:
//иницализация* v.swf грузится в c.swf: Код:
this.createEmptyMovieClip ('cont',1); |
mrspb, мне непонятен ваш код. Я не знаю, что такое «v», «t», «aaa», «i0», «tOld», «k» и прочие ничего неговорящие названия переменных.
Код:
aaa = []; |
не работает, посмотрите в "Диспетчере задач" на график производительности, точнее на график занимаемой памяти: пока работает for, график растёт. потом замирает на одном уровне (,пока не закроешь флэшку), хотя aaa уже удалён.
Для наглядности лучче взять 950000 итераций. У меня такой масивчик занимает прим 110 метров памяти, а там, где памяти (физической) всего 128 метров или того меньше моя флэшка может устроить нехилые тормоза компу. http://images.people.overclockers.ru/90424.gif (5кб) |
Ну да, не удаляет…
А зачем такие итерации, если они всё-равно не выполнятся за раз? |
итерации в таких количествах - это к примеру.
если они всё-равно не выполнятся за раз? в каком смысле не выполнятся? аборт скрипта, чтоли? ну в моём коде выше это предусмотрено :) Тем не менее, вопрос остаётся открытым... |
ЭЭЭ .... а так ? =)
Код:
_root.createEmptyMovieClip("kod", 1); |
хорошая шутка :lol:
у меня Флэш повис, когда я лист вариэйбл сделал при миллионном массиве :) анлоадМови () не прокатил )) |
Вложений: 1
Я так понимаю Ф.плауер имеет внутренний самокотроль очистки памяти. В этом тесте видно, если запустить свф и смотреть на показатель памяти, как в момент отчистки массива память сначала остаёться той же( иногда растёт, иногда падает чуть-чуть), а затем возвращаеться в начальное положение примерно 4-9 MB, потом растёт до 20-30 MB и так далее...
|
| Часовой пояс GMT +4, время: 09:44. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.