Actionscript 3 使用while循环等待?

Actionscript 3 使用while循环等待?,actionscript-3,while-loop,Actionscript 3,While Loop,我想让我的游戏处于等待状态。我应该这样使用while循环,还是有一种更高效的方法来实现这一点?在AS3中永远不要使用这样的方法。AS3有一个严重的缺点,它不支持多线程。只要计时器继续运行,程序就会完全崩溃,如果用户一直试图单击它或其他东西,Windows 7尤其会崩溃 试试这个: var lastRecordedTime:Number = getTimer(); while(getTimer()>lastRecordedTime+10000) { } 唯一的一点是它是异步的,因此您可能

我想让我的游戏处于等待状态。我应该这样使用while循环,还是有一种更高效的方法来实现这一点?

在AS3中永远不要使用这样的方法。AS3有一个严重的缺点,它不支持多线程。只要计时器继续运行,程序就会完全崩溃,如果用户一直试图单击它或其他东西,Windows 7尤其会崩溃

试试这个:

var lastRecordedTime:Number = getTimer();
while(getTimer()>lastRecordedTime+10000)
{

}

唯一的一点是它是异步的,因此您可能需要添加一些特殊的逻辑来同时忽略某些类型的事件和内容,这取决于您试图完成的任务。但是使用while循环来睡眠线程在AS3中是行不通的。

在AS3中千万不要使用这样的方法。AS3有一个严重的缺点,它不支持多线程。只要计时器继续运行,程序就会完全崩溃,如果用户一直试图单击它或其他东西,Windows 7尤其会崩溃

试试这个:

var lastRecordedTime:Number = getTimer();
while(getTimer()>lastRecordedTime+10000)
{

}

唯一的一点是它是异步的,因此您可能需要添加一些特殊的逻辑来同时忽略某些类型的事件和内容,这取决于您试图完成的任务。但是使用while循环来休眠线程在AS3中是行不通的。

您标记了Java,但这段代码看起来不像Java。@TargetMan Java与AS3非常相似,而while循环在Java中应该是相同的,对吗?不同语言的循环可能非常相似,但例如Java有
Thread.sleep
在没有while循环的情况下等待特定的毫秒数。@rgetman ok对此表示抱歉。AS3的解决方案是什么?回答了一个类似的问题,您标记了Java,但这段代码看起来不像Java。@Rgetman Java与AS3非常相似,虽然Java中的循环应该相同,对吗?不同语言的循环可能非常相似,但例如Java有
Thread.sleep
在没有while循环的情况下等待特定的毫秒数。@rgetman ok对此表示抱歉。AS3的解决方案是什么?回答了一个类似的问题,我同意这个答案,但也许“thrashes”是比“crasks”更好的选择由于我们在Flash中编写的代码是单线程的(除了新的Actionscript workers之外),while循环只会占用唯一的线程,如果占用的时间太长,所有浏览器最终都会抱怨。我同意答案,但也许“thrashes”是比“crash”更好的选择由于我们在Flash中编写的代码是单线程的(除了新的Actionscript workers之外),while循环只会占用唯一的线程,如果占用时间过长,所有浏览器最终都会抱怨。