作者justaID (快乐崇拜)
看板Flash
标题[问题] AS3 Timer 计时器 延迟
时间Thu Aug 19 19:18:48 2010
最近在研究Timer计时器,发现时间间隔越短,延迟状况越严重
虽然说AS3的Timer允许时间间隔最小设定到1ms,但跑起来延迟状况却很严重
如:var myTimer:Timer=new Timer(1,1000);
应该1秒跑完,但我跑的结果,实际上却跑了将近8秒才跑完
我进一步测试,发现就连500ms也会延迟(20秒要花21秒跑完,30秒要花32秒跑完)
一旦时间拉长,岂不误差很大!?
请问这是个人电脑效能的问题,还是AS3本身的问题?
(如果是後者,我可以理解因呼叫函数次数多,速度相对慢;
但这样AS3本身的设定不就不精准了?)
谢谢大家~
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.134.88.67
※ 编辑: justaID 来自: 220.134.88.67 (08/19 19:21)
1F:→ ericinttu:你为什麽要让它这麽忙? 08/19 19:31
2F:推 etrexetrex:cool 有新梗了 谁来实作一个自动调整时间间隔的 Timer 08/20 00:06
3F:→ dsmwang:用getTime判断,结果发现延迟的更多XDD 08/20 01:24
4F:→ justaID:1楼大XD 因为游戏计时器需要计时到0.01 不得不让它忙一点 08/20 02:16
5F:→ justaID:顺便测0.001秒 延迟8倍 就算0.01秒的延迟也将近2倍 08/20 02:18
6F:→ justaID:在游戏计时上就失去准确 08/20 02:20
7F:推 ericinttu:你还是没回答到我的问题. 没必要每1ms都把所有的东西都 08/20 04:07
8F:→ ericinttu:重头做过一遍吧, 如果真要如此, 那就要改你的流程架构了 08/20 04:08
9F:→ ericinttu:时间的精准度,也是要符合现实面. 08/20 04:09
10F:→ justaID:喔!我每1ms做的事情只有对一个int变数++,以及印出该变数 08/20 05:12
11F:→ justaID:并没有做其他事 单纯用来计时 这样不算做太多事吧? 08/20 05:14
12F:→ justaID:(等於函式里只有2行很短的程式) 08/20 05:15
13F:→ ericinttu:就回归到取样频率是否要到1ms,如果是的话,Flash 的架构 08/20 08:53
14F:→ ericinttu:是否能支持你这麽做? 08/20 08:54
15F:→ justaID:我就是来请教这一点的^_^ 究竟是电脑效能问题还是Flash架 08/20 10:59
16F:→ justaID:构问题 我必须显示数字到10ms 如果是後者就得另谋他法~"~ 08/20 11:00
17F:→ ericinttu:我之前有做一个小东西,显示单位到1ms,初步看起来没有 08/20 12:24
18F:→ ericinttu:delay,要看那个网址吗? 08/20 12:25
19F:→ ericinttu:要的话丢我水球 08/20 12:26
20F:→ justaID:不会用水球 已站内信给大大 谢谢! 08/20 13:36