Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   как сделать копию мувиклипа (http://www.flasher.ru/forum/showthread.php?t=132811)

SamFR 21.11.2009 21:06

вряд ли...
хотя кто его знает)

а вообще, зачем выгружать библиотеку, если её планируется использовать? :)

yzhastik 21.11.2009 23:35

хмм... неужели никто с подобным не сталкивался? когда нужно разместить произвольное количество независимых копий одной и той же swf-ки?

bicubic_bublic 21.11.2009 23:52

Цитата:

Сообщение от yzhastik (Сообщение 867390)
хмм... неужели никто с подобным не сталкивался? когда нужно разместить произвольное количество независимых копий одной и той же swf-ки?

вам уже ответили несколько вариантов.
чем вас не устраивает этот?
к тому же вам никто не мешает для каждой загружаемой свфки использовать свой собственный лоадер..

SamFR 22.11.2009 00:29

Цитата:

Сообщение от yzhastik (Сообщение 867326)
метод не подходит только изза того, что мувики я загружаю последовательно, и в лоадере останется инфа только о последнем...

Ну а кто вам мешает грузить их параллельно? Или это дело принципа? :)

Во-вторых, несколькими постами выше я вам показал метод, использующий всего лишь одну swf-библиотеку с набором классов. В этом случае нужен всего лишь один загрузчик.

И, наконец, никто не мешает вам объединить эти два метода: грузить несколько библиотек, в каждой из которых содержится набор классов (наимер, разные темы графического оформления, наборы персонажей, ...)

yzhastik 22.11.2009 11:50

Цитата:

Сообщение от bicubic_bublic (Сообщение 867391)
вам уже ответили несколько вариантов.
чем вас не устраивает этот?
к тому же вам никто не мешает для каждой загружаемой свфки использовать свой собственный лоадер..

я этот метод пытался уже применить но с первого раза он почему то у меня не пошел... сейчас еще раз попробовал... и о чудо все получилось! Спасибо большое, это как то что мне было нужно!

dimarik 23.11.2009 10:17

unload не влияет на содержимое applicationDomain. Как говорится, слово класс не воробей: засветился - не вырубишь и unload'ом.

SamFR 23.11.2009 15:59

Цитата:

Сообщение от dimarik (Сообщение 867604)
unload не влияет на содержимое applicationDomain.

Оп, а вот это интересно) Т.е., если после loader.unload() я обращусь к loader.contentLoaderInfo.applicationDomain.getDefinition(...), то получу то же, что и до unload-а?
А что будет в случае загрузки нового содержимого в тот же лоадер? И как тогда избавиться от уже не используемых классов?

dimarik 23.11.2009 18:27

Definitions [of application domain]. The definition can be that of a class, a namespace, or a function.

Небольшие исследования показали, что при живой ссылке на application domain не происходит выгрузка definitions, даже если вы сделали
loader.unload() и убили сам loader. Но стоит зарезать последнюю ссылку на аппдомен, то он тут же будет съеден GC при очередной чистке. А без ссылки на аппдомен никак не получить definition, т.е. это бессмыслено. Если грузить в ApplicationDomain.currentDomain, то definitions, по понятным причинам, живут до кончины приложения.

SamFR 23.11.2009 22:57

Понятно, спасибо за полезную информацию)

dimarik 23.11.2009 23:25

Цитата:

Сообщение от SamFR (Сообщение 867781)
Понятно, спасибо за полезную информацию)

Это еще не все. Я буду Капитаном Очевидность, но подтвеж(у(ду?)хехе), что ничего нового нельзя загрузить в существующий Application domain, помимо того, что там уже есть. Flash Player просто не даст Вам это сделать. Я про конфликтующие имена классов, неймспейсов, функций... короче, definitions, которые уже существуют там.


Часовой пояс GMT +4, время: 08:12.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.