![]() |
Печать в зеленом потоке (greenthreads) или асинхронные операции
Что это такое: http://help.adobe.com/ru_RU/as3/mobi...a95b-8000.html
Вобщем у меня есть механизм парсинга страниц для печати. 1 страница формируется приблизительно 50мс, все бы ничего, но если страниц много, то соответственно GUI перестает отвечать на действия пользователя, поэтому я реализовал процесс формирования страниц в зеленом потоке и здесь нет вобще никаких проблем. Но после того, как страницы сформированы их все мне необходимо добавить в PrintJob, одна операция addPage, занимает в среднем 500мс, соответственно данную операцию я тоже делаю в зеленом потоке, но появилась проблема, во всех браузерах, кроме IE, флешка визуально вешается, т.е. GUI не отвечает, ничего не рендерит, хотя все операции четко выполняются как положено, только после ресайза окна, происходит рендер во флешке и опять все вешается при начале еще одной итерации addPage. Хочу заострить внимание на том, что в IE все замечательно работает (GUI вешается только на время выполнения addPage). У меня также нет возможности разбить итерации на менее ресурсотребовательные операции, т.к. 500мс занимает нативный метод addPage. В принципе меня устраивает полная загрузка в течении 500мс, но хотелось бы избавиться от "зависания" уже после того как addPage полностью отработал. Буду признателен за любые идеи |
может попробовать использовать Worker? http://help.adobe.com/ru_RU/FlashPla...em/Worker.html
|
Спасибо, не знал о существовании такого решения, но есть несколько но.
1. Версии среды выполнения: Flash Player 11.4 2. Каждый дополнительный объект worker создается из отдельного SWF-файла. Вероятно, я в последствии приду к такому решению, но невозмутимые силы настаивают на использовании версии 10.1. Большое спасибо, но я, конечно, был бы безумно рад еще идеям. |
А если по исполнении addPage вешать setTimeout на выполнение следующего addPage?
|
Цитата:
|
| Часовой пояс GMT +4, время: 06:44. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.