a-u*_*a-u 2 java concurrency multithreading executorservice
我是java并发的新手,所以这可能是一个已经回答很久或者太明显的问题,我可能会遗漏一些东西.
我像这样的任务运行:
Executors.newSingleThreadExecutor().执行(任务)
我的问题是当它结束执行任务的run方法时为什么它不退出或为什么线程仍然存活?我的理解是,一旦线程run()完成线程就不再存在了,对吧?
newSingleThreadExecutor返回一个ExecutorService使用单个线程的东西 - 它仍然可以执行多个任务.它不会退出,因为您可能想要提供更多任务.
您可以使用:
ExecutorService service = Executors.newSingleThreadExecutor();
service.execute(task);
service.shutdown();
Run Code Online (Sandbox Code Playgroud)
在任务执行后关闭它.
| 归档时间: |
|
| 查看次数: |
4245 次 |
| 最近记录: |