任何人都可以解释一下在jdk 1.7中引入的ForkJoinWorkerThread的优点和功能,或者提供一个解释这些功能的链接。
我正在尝试在Oracle和Goolge上找到它的工作示例,但却无法找到它。
感谢。
答案 0 :(得分:2)
您不应该使用ForkJoinWorkerThread
。请改用ForkJoinPool。更具体地说,唯一可见的构造函数是protected
,所以除非你有意识地对它进行子类化,否则你不必担心。
来自api
由ForkJoinPool管理的线程,它执行ForkJoinTasks。这个 class是可子类化的,仅仅是为了增加功能 - 没有可覆盖的方法来处理调度或执行。 但是,您可以覆盖初始化和终止方法 围绕主任务处理循环。如果你确实创造了这样一个 子类,您还需要提供自定义 ForkJoinPool.ForkJoinWorkerThreadFactory在ForkJoinPool中使用它。
你真的需要实现吗?
我试图在Oracle和Goolge上找到它的工作示例,但不是 能够找到一个。
如果您使用ForkJoinPool并且需要覆盖ThreadFactory
,则需要实现ForkJoinWorkerThread
并将其作为构造函数参数传递。
public ForkJoinPool(int parallelism,
ForkJoinPool.ForkJoinWorkerThreadFactory factory,
Thread.UncaughtExceptionHandler handler,
boolean asyncMode)