擅长:python、mysql、java
<p>轻量级选项是<a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/util/concurrent/ScheduledExecutorService.html" rel="nofollow">ScheduledExecutorService</a>。在</p>
<p>与python代码片段大致相当的Java代码是:</p>
<pre><code>private final ScheduledExecutorService scheduler =
Executors.newScheduledThreadPool(1);
public ScheduledFuture<?> newTimedCall(int callsPerSecond,
Callback<T> callback, T argument) {
int period = (1000 / callsPerSecond);
return
scheduler.scheduleAtFixedRate(new Runnable() {
public void run() {
callback.on(argument);
}
}, 0, period, TimeUnit.MILLISECONDS);
}
</code></pre>
<p>留给读者的练习:</p>
<ul>
<li>定义回调接口</li>
<li>决定如何处理回归的未来</li>
<li>记得把遗嘱执行人关了</li>
</ul>