如何在 Java 中每秒引发 N 个事件?
基本上我有一个测试工具,想要引发事件/每秒调用一个方法 N 次。
有人可以帮我弄清楚如何做到这一点吗?
正如 chrylis 回答的那样,Timer
课程可以适合您。这是我写的一个答案,可以帮助你。
package perso.tests.timer;
import java.util.Timer;
import java.util.TimerTask;
public class TimerExample extends TimerTask{
Timer timer;
int executionsPerSecond;
public TimerExample(int executionsPerSecond){
this.executionsPerSecond = executionsPerSecond;
timer = new Timer();
long period = 1000/executionsPerSecond;
timer.schedule(this, 200, period);
}
public void functionToRepeat(){
System.out.println(executionsPerSecond);
}
public void run() {
functionToRepeat();
}
public static void main(String args[]) {
System.out.println("About to schedule task.");
new TimerExample(3);
new TimerExample(6);
new TimerExample(9);
System.out.println("Tasks scheduled.");
}
}