GetTickCount是一个api,它是反应到从开机到当前的毫秒数,这个很好.可以做一些短途的计时器.
比如说做服务器中对象池计时器,对象超过多少时间就自动释放对象.
但是GetTickCount也有一SEO靠我个麻烦的地方,就是在电脑运行了49.7天之后,数字会置0 ,然后从0开始.这样的话,简单的时间判断可能会造成49.7天后的bug,那么怎办呢?其实可以用一点小技巧就可以解决.
看下面的代码,Judge1SEO靠我是判断函数,
i 是当前的计时点
OutSec 是超时秒数.
NowTick 是当前的Tick,即当前时间点.可以看到以下的测试代码模拟了几种计时起点和当前的Tick,但是神奇的判断Judge1SEO靠我都可以把时间正确判断.
rocedure TForm4.FormCreate(Sender :TObject); varI :UInt64;NowTick :LongWord;OutSeSEO靠我c :Word;procedure Judge1();varTmp :UInt64;beginTmp := I +网站备案号:浙ICP备17034767号-2