スレッドを呼び出すための JButton があります。しかし、私が実際にやりたいのは、1 分後にスレッドを停止することです! 私のactionListenerメソッドは次のとおりです。
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
new Frame2().setVisible(true);
Thread t=new Thread(new Frame2());
t.start();
}
1分間だけ実行する私のスレッドは次のとおりです。
public void run(){
int i;
while(!Thread.currentThread().isInterrupted()){
for(i=0;i<=100;i++){
if(i==100){
Thread.currentThread().interrupt();
}
try {
Thread.currentThread().sleep(600);
} catch (InterruptedException ex) {
System.out.print("THREAD CLOSED");
return;
}
}
System.out.print("DOING THINGS BLA BLA");
}
}
問題: 1 分後にスレッドを正常に停止しましたが、目的の操作を実行できませんでした。スレッドを1分間だけ実行し、スレッド内で自分のことをしたいために、どうすればこれを達成できるかを知りたいだけです! しかし、どのように?このアプローチは間違っていますか?はいの場合、正しいアプローチは何ですか?