Flash: разделяемые библиотеки во время выполнения — выгода памяти?

#flash #rsl

#flash #rsl

Вопрос:

Предположим, что у меня есть два приложения, запущенных на одной странице. У меня есть библиотеки, скомпилированные в SWF-файл:

Предположим

 MemoryFootPrint(App A) = App A SWF   Libraries
MemoryFootPrint(App B) = App B SWF   Libraries 
  

Итак:

 MemoryFootPrint(total) = MemoryFootPrint(App A)   MemoryFootPrint(App B)
  

Мне интересно, уменьшит ли использование RSL объем памяти моих двух приложений. Будут ли они совместно использовать одни и те же библиотеки. Будет ли объем памяти:

 MemoryFootPrint(total) = App A SWF   App B SWF   Libraries 
  

или

 MemoryFootPrint(total) = App A SWF   App B SWF   Libraries   Libraries 
  

Предназначен ли RSL только для увеличения времени загрузки (за счет кэширования) или это также уменьшает объем памяти приложения?

Ответ №1:

На странице Adobe ничего не говорится о RSIS и занимаемом объеме памяти, кроме как сказать:

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

Исходя из этого, я предполагаю, что использование RSIS не дает никакой выгоды от использования памяти.