[英]Overwriting a scheduled task
除非被新的計划任務覆蓋,否則x秒后如何執行任務?
場景是,我想在用戶完成我的JTextField鍵入后1秒執行任務。 為此,我需要安排任務,並在每次“文檔”更改時重新安排任務。
我嘗試使用ScheduledExecutorService
,但是計划只是將任務添加到列表中,而不是取消上一個任務。
這是我想去的地方:
class TextChangeListener implements DocumentListener {
private final ??? updater = new ???();
@Override
public void changedUpdate(DocumentEvent arg0) {}
@Override
public void insertUpdate(DocumentEvent arg0) {
update();
}
@Override
public void removeUpdate(DocumentEvent arg0) {
update();
}
private void update() {
// Wait for the user to finish typing first
updater.schedule(new Runnable() {
@Override
public void run() {
doSomeStuff();
}
}, 1, TimeUnit.SECONDS);
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.