使用actionscript 3获取以纳秒为单位的时间

时间:2011-05-30 11:09:42

标签: flex actionscript-3

您好我正在尝试获取当前时间,包括动作脚本3中的纳秒,以便在flex 4.5中使用。 任何可以帮助我的人?​​

6 个答案:

答案 0 :(得分:9)

Flash Player中可用的最小时间度量是毫秒。

要获取当前时间,只需创建新的Date对象:

var currentTime:Date = new Date();

查看Date课程here的更多文档。

答案 1 :(得分:7)

ActionScript不会公开精确的计时器。

答案 2 :(得分:0)

我认为commont计算机不支持更小的时间测量,然后是里程数

答案 3 :(得分:0)

我不确定是否有人已经这样做了,但您可以为Socket服务器创建NTP接口。

您不需要实施整个协议;你可以做ntpdate做的事情来抓住时间。自从我直接使用该协议以来已经很长时间了,但我不认为这个任务很难。

答案 4 :(得分:0)

你不能在Flex中获得非秒数,实际上没有多少语言提供纳秒作为时间跨度的结果。你可以获得的最多是“滴答”,它主要是为具有本机代码执行的语言提供的,但它不是直接提供给脚本语言的。

最好的方法是让毫秒有差异,只需将结果缩放到基准测试中就像更长的运行时间(比如10次甚至100倍以上的测试),这会使结果更接近预期的结果。

答案 5 :(得分:0)

当我尝试以微秒为单位测量某些东西时,我将其循环1000次,并在实际for循环所需的时间内减去时间。我会得到接近微秒的东西。

var startTime:int = new Date().valueOf();
for(var ii = 0;ii<1000;ii++)
{
    //do something here     
}
var endTime:int = new Date().valueOf();
trace(endTime-startTime);

我猜你可以循环1 000 000次以获得纳秒但是你必须等待一段时间才能完成循环。