Как продлить период ожидания по умолчанию во флэш-приложении? - PullRequest
8 голосов
/ 18 сентября 2008

У меня есть приложение, написанное на flash (на самом деле оно написано на Haxe и работает под SHWX, но здесь это не имеет значения) У меня довольно сложная задача, которая потребляет много ресурсов процессора и иногда выполняется более 15 секунд. Если это произойдет, я получаю сообщение об ошибке: «Сценарий выполняется дольше, чем период ожидания по умолчанию 15 секунд». и все вылетает.

Я знаю, что могу использовать продолжения, чтобы не допустить этого, но есть ли способ продлить этот «период ожидания по умолчанию»? Это инструмент для разработчиков, на самом деле не имеет значения.

Ответы [ 5 ]

2 голосов
/ 21 сентября 2008

Другой способ - связать ключ SWF на основе swfmill с помощью ключа -swf-lib и установить там этот тег ScriptLimits, а затем haxe повторно его использует.

1 голос
/ 08 августа 2011

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

Однако значение по умолчанию для свойства scriptTimeLimit равно 60 секунд, что также максимум , поэтому вы можете только увеличить значение если вы ранее установили его на более низкое значение. Вам редко нужно измените это значение.

Источник: http://livedocs.adobe.com/flex/3/html/help.html?content=performance_05.html

1 голос
/ 22 сентября 2009

в CS3 + вы просто устанавливаете свойство «Время скрипта» SWF во время публикации - оно находится на вкладке флэш-памяти настроек публикации

0 голосов
/ 18 сентября 2008

Я предлагаю разбить вашу функцию на более мелкие куски и распределить их по нескольким кадрам. Таким образом, вы можете отобразить анимацию прогресса, и приложение Flash не будет перестать отвечать на запросы. Так, например, если вам нужно зациклить более 1000 элементов, вы делаете 100 в одном кадре, затем еще сотню в следующем кадре и т. Д., Пока не обработаете их все. Я бы не рекомендовал взломать ваш swf.

0 голосов
/ 18 сентября 2008

Я не уверен, что есть что-то более родное, чтобы это сделать, но, похоже, есть команда , которая взламывает SWF, чтобы добавить тег ScriptLimits для продления периода ожидания.

...