我正在尝试定期执行一个操作。我想在每隔3秒后创建一个类的新实例。最好使用Handler还是Thread来实现这个功能?是否有一种更简单、比较愚蠢的方法可以尝试?我不擅长使用线程-我想学习,但重要的是在担心良好的编程实践之前让它正常运行。
new Thread(){
public void run(){
//makes sure the player still has 3 lives left
while(game == false){
uiCallback.sendEmptyMessage(0);
try {
Thread.sleep(2000); // wait two seconds before drawing the next flower
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} //sleep for 2 seconds
}
}
}.start();
for(;;)
表示循环会一直运行下去,相当于while(true)
。如果你想让它在某个点停止,你需要加入自己的条件。 - Travis Webbwhile(game) { ... }
会首先检查并确保game
变量为真;当你退出游戏时,你需要调用timer.interrupt()
,这样循环就会立即退出,而不是等待3秒钟。 - Travis Webb