Форум 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=130172)

greenya 19.09.2009 18:40

Подождать наступления события в этом же методе
 
Добрый день,

пишу небольшой класс, у него есть статический метод Execute(), задача метода сформировать запрос, отправить, дождаться ответа и вернуть результат. Так чтобы вызывающему коду не нужно было создавать лишние event listener-ы.

Пишу так:
Код AS3:

...
public static function Execute(...
{
...
var r:URLRequest = new URLRequest();
// тут идет заполнение r...
 
var response:Object = null;
 
var l:URLLoader = new URLLoader();
l.dataFormat = URLLoaderDataFormat.TEXT;
l.addEventListener(IOErrorEvent.IO_ERROR, function() { response = new IOError(); });
l.addEventListener(SecurityErrorEvent.SECURITY_ERROR, function() { response = new SecurityError(); });
l.addEventListener(Event.COMPLETE, function(e:Event) { response = URLLoader(e.target).data; });
l.load(r);
 
while (response == null)
        ; // БАГ: СДЕСЬ НУЖНО ОЖИДАНИЕ 100мс
 
if (response is Error)
        throw response;
 
return response;
}
...

Вобщем проблемый код пометил комментарием "// БАГ".
Подскажите пожалуйста метод в ActionScript чтобы можно было просто приостановить выпонение на некоторое кол. мс , типа "delay(100);", а то я кроме setInterval() ничего не нашел.

udaaff 19.09.2009 19:04

Нельзя ничего приостановить.

etc 19.09.2009 19:10

ActionScript асинхронен, поэтому подписывайтесь на события.


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

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