dnk*_*tso 3 java multithreading executorservice executor executors
我有一个单线程执行器服务,用于通过网络获取一些数据.
当用户在搜索框中键入时,我正在排队可能的网络任务.我想要的是取消所有以前的请求,只排队并立即运行最新的请求.
我目前的方法是覆盖execute()和submit()方法并在调用super之前清除队列.
有什么想法吗?
不要得到它,为什么不保存Future返回发布一个可调用的服务,然后cancel()将来,如果你不希望它被执行.
例如
Future f1 = service.submit(some_task);
// later
f1.cancel(true); // will interrupt if running...
Run Code Online (Sandbox Code Playgroud)
更清洁的IMO ......
| 归档时间: |
|
| 查看次数: |
152 次 |
| 最近记录: |