gpt4 book ai didi

actionscript-3 - AS3 获取当前时间而不创建新对象

转载 作者:行者123 更新时间:2023-12-04 08:28:47 25 4
gpt4 key购买 nike

如何在不使用“new”运算符的情况下在 AS3 中获取自 1970 年 1 月 1 日午夜以来的当前毫秒数?我问是因为我需要每秒执行大约 100 次,并且目前尝试减少堆分配以保持 gc 低。

最佳答案

您应该创建它一次,然后添加毫秒,自创建以来通过 getTimer();您还需要一个帮助变量来存储您的数据创建时间;

package 
{
import flash.display.Sprite;
import flash.events.Event;
import flash.utils.getTimer;

public class Main extends Sprite
{
private var _myLittleDate:Date;
private var _myLittleDateCreationTime:Number;

public function Main():void
{
_myLittleDate = new Date(); //Our first and only object creation
_myLittleDateCreationTime = getTimer(); //Store it's creation time
addEventListener(Event.ENTER_FRAME, onEnterFrame); //Check function
}

private function onEnterFrame(e:Event):void
{
_myLittleDate.time += ( getTimer() - _myLittleDateCreationTime );
trace(_myLittleDate); //You get valid, refreshed data object here
_myLittleDateCreationTime = getTimer(); // Don't forget to update your initial time
//It's accurate since method .getTimer() is accurate itself
//You can even compare two Data object by creating another and tracing it right here
}
}
}

如果您只需要知道自上一帧以来耗时,而不知道星期几或一年,您可以使用 getTimer();靠它自己,效率更高

关于actionscript-3 - AS3 获取当前时间而不创建新对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18927696/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com