擅长:python、mysql、java
<p>正如我展示的<a href="https://stackoverflow.com/a/40496844/3579910">here</a></p>
<pre><code>import time
def drummer():
counter = 0
# time.sleep(time.time() * 8 % 1 / 8) # enable to sync clock for demo
while counter < 60 * 8:
counter += 1
print time.time()
time.sleep(.125 - time.time() * 8 % 1 / 8)
</code></pre>
<p>这个定时器调整每一个拍子并重新排列。在</p>
<p>调整几乎不需要时间:</p>
^{pr2}$
<p>也就是说每次都需要0.25微秒</p>
<p>为了准确起见:</p>
<pre><code>1488490895.000160
1488490895.125177
1488490895.250167
1488490895.375151
1488490895.500166
1488490895.625179
1488490895.750178
1488490895.875153
</code></pre>
<p>大约28微秒的音程。在本地运行更长的时间会产生大约130μs的总漂移(+-65μs),但是,由于它每拍都与时钟同步,因此不会随时间而偏离。在</p>