擅长:python、mysql、java
<p>busfault对于FOR循环的使用是正确的。你知道吗</p>
<p>要使用<code>yield</code>测试它,需要<code>schedule</code>调用的函数。
e、 g</p>
<pre><code>import viz
import viztask
def myfunc():
for cuetime in (2,3,4):
mydata = yield viztask.waitTime( cuetime)
print( 'Wait time: ' , cuetime, ' - Elapsed time: ', mydata.elapsed )
viz.go()
viztask.schedule( myfunc )
</code></pre>
<p>产生这样的输出。。。你知道吗</p>
<pre><code>('Wait time: ', 2, ' - Elapsed time: ', 2.002306576051085)
('Wait time: ', 3, ' - Elapsed time: ', 3.016386045747815)
('Wait time: ', 4, ' - Elapsed time: ', 4.016321305293874)
</code></pre>
<p>你会发现时间不匹配通常与你的帧速率有关(60赫兹~16.7毫秒)</p>
<p>以下由OP编辑:
.. 一个简单的方法来测试,如果时间差异是由于帧同步是关闭垂直同步(V同步)为您的图形卡,并重新运行它-我怀疑你会得到更好的计时,但你可能会得到你的显示器上的帧撕裂-然后这是你的电话,什么是更重要的是你,图像质量或计时精度。
另一个证明其todo wit刷新的方法是简单地更改刷新率,看看时间差是否相应地变化。你知道吗</p>
<p>我注意到你又开始使用了时间。时间()-这比根据我的演示使用waitTime的返回对象(即<code>mydata = yield viztask.waitTime( cuetime)</code>…)更不准确你知道吗</p>