模块  java.base
软件包  java.util.concurrent

Class ForkJoinWorkerThread

  • 实现的所有接口
    Runnable

    public class ForkJoinWorkerThreadextends Thread
    ForkJoinPool管理的线程,执行ForkJoinTask 这个类只是为了增加功能而可子类化 - 没有可覆盖的方法来处理调度或执行。 但是,您可以覆盖主任务处理循环周围的初始化和终止方法。 如果您确实创建了这样的子类,则还需要在ForkJoinPool中提供自定义ForkJoinPool.ForkJoinWorkerThreadFactoryForkJoinPool
    从以下版本开始:
    1.7
    • 构造方法详细信息

      • ForkJoinWorkerThread

        protected ForkJoinWorkerThread​(ForkJoinPool pool)
        创建在给定池中运行的ForkJoinWorkerThread。
        参数
        pool - 此主题 pool的池
        异常
        NullPointerException - 如果pool为null
    • 方法详细信息

      • getPool

        public ForkJoinPool getPool()
        返回托管此线程的池。
        结果
        游泳池
      • getPoolIndex

        public int getPoolIndex()
        返回其池中此线程的唯一索引号。 返回值的范围从0到池中可能存在的最大线程数(减1),并且在线程的生存期内不会更改。 对于跟踪状态或收集每个工作线程而不是每个任务的结果的应用程序,此方法可能很有用。
        结果
        索引号
      • onStart

        protected void onStart()
        在构造之后但在处理任何任务之前初始化内部状态。 如果重写此方法,则必须在方法开头调用super.onStart() 初始化需要小心:大多数字段必须具有合法的默认值,以确保即使在此线程开始处理任务之前,来自其他线程的尝试访问也能正常工作。
      • onTermination

        protected void onTermination​(Throwable exception)
        执行与此工作线程终止相关的清理。 如果重写此方法,则必须在重写方法的末尾调用super.onTermination
        参数
        exception - 导致此线程因不可恢复的错误而中止的异常,或者 null如果正常完成)