Как создать многопроцессную архитектуру для приложения Flex AIR? - PullRequest
0 голосов
/ 11 ноября 2010

Я разрабатываю приложение AIR на Flex, которое будет работать с разными SWF-файлами. Я нахожу некоторые проблемы, так как эти SWF-файлы, в которые я играю, тяжелые. Я считаю, что анимация не является плавной и приводит к высокой нагрузке на график использования ЦП (это может быть из-за однопоточной архитектуры Flex). Поэтому я планирую использовать многопроцессную архитектуру для своего приложения. Что-то вроде Google Chrome. У меня есть одно основное приложение как один процесс, и другие SWF-файлы будут воспроизводиться в отдельном процессе, но должны отображаться в основном окне приложения. Как сделать это возможным во Flex? Спасибо !!

Ответы [ 4 ]

1 голос
/ 13 апреля 2012

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

1 голос
/ 11 ноября 2010

Вам не повезет, если вы попробуете это с AIR.Возможно, с помощью Flash Player, так как вы могли бы использовать HTML-страницу в качестве окружающего контейнера, но у вас нет вариантов для этого в AIR.

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

Вместо устранения симптомов (приложение работает медленно), как насчет устранения причины (кода, вызывающего работу приложения медленно)?

1 голос
/ 13 апреля 2012

К сожалению, среда выполнения флэш-памяти является однопоточной.Однако вы можете имитировать потоки с помощью разумного использования событий.Вы можете добиться ощутимого увеличения производительности, позволяя флэш-плееру обрабатывать время выполнения кода, разбивая большие блоки кода на методы меньшего размера, вызываемые событиями.эластичная беговая дорожка: http://drawlogic.com/2008/04/22/a-peek-into-the-as3-and-avm2-virtual-machine-and-elastic-racetrack/

0 голосов
/ 11 ноября 2010

Это невозможно, поскольку флеш-плеер не поддерживает несколько потоков.Надеюсь, они изменят это в будущем.

...