我正在使用opengl进行图形处理,我想设置每秒512个值的计时器我喜欢这样:
self.animationTimer = [NSTimer scheduledTimerWithTimeInterval:1.0/512.0
target:self
selector:@selector(drawView)
userInfo:nil
repeats:YES];
在绘制方法中,我绘制了图表但不是每秒打印512个值。
任何人都可以帮助我,无论是对还是错?
答案 0 :(得分:4)
NSTimer可能无法快速发射。
计时器不是实时机制;只有当添加了计时器的其中一个运行循环模式正在运行并且能够检查计时器的触发时间是否已经过去时,它才会触发。由于典型的运行循环管理各种输入源,因此定时器的时间间隔的有效分辨率限制在50-100毫秒的数量级。
除非你做的事非常特别,否则每秒会给你10-20个滴答。
答案 1 :(得分:1)
这不会起作用。
至少有两个原因。
答案 2 :(得分:0)
[NSTimer scheduledTimerWithTimeInterval:1.0f/512.0f target:self selector:@selector(drawView) userInfo:nil repeats:YES];
尝试使用这个
让我知道它是否有效!!!
快乐编码!!!!
答案 3 :(得分:0)
我能够每秒绘制512个值。我使用相同的时间间隔,但我参考了加速度计图:http://developer.apple.com/library/ios/#samplecode/AccelerometerGraph/Listings/MainViewController_m.html#//apple_ref/doc/uid/DTS40007410-MainViewController_m-DontLinkElementID_10 我根据我的要求定制它,它工作得很好。 谢谢!!!