![]() |
1
1
您正在使用提交任务
这个
作为直接处理线程的替代方法,并发API引入了
提交类型的任务时
作为替代
|
![]() |
2
0
首先,创建最适合您需求的执行器服务,例如:
(更多关于遗嘱执行人: https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Executors.html ) 然后将runnable对象更改为可调用的,类似于runnable,但返回一个值(有关可调用的更多信息: https://docs.oracle.com/javase/8/docs/api/index.html?java/util/concurrent/Callable.html ):
类型参数应与要作为结果返回的类型相同。 接下来,创建任务列表:
然后执行它们:
当所有任务都完成时(如果我正确理解您的情况,这是您希望实现的),返回上面的方法,但是完成的任务可以正常终止,也可以通过抛出异常终止。 最后,关闭执行器服务:
|
![]() |
3
0
如果您使用的是Java 8 +,您可以使用
也有。
|
![]() |
user107586 · 如何处理等待句柄不会导致无限循环? 6 月前 |
![]() |
ron burgundy · 获取-释放语义是否跨线程传递?[副本] 6 月前 |
![]() |
BenjiFB · C#内存缓存:在一次操作中追加到列表? 6 月前 |
![]() |
András Takács · Python多线程问题 10 月前 |
|
András Takács · Python多线程错误 10 月前 |