使用并发Fork/Join框架

Fork/Join 框架

image.png
Fork/Join 框架的设计目的是处理可以分解为较小任务的大任务。
通过递归完成,不断地将任务分解,直到遇到基本情况,这个任务非常简单,可以直接解决,然后结合所有的部分结果来计算最终结果
Fork/Join 框架的主类是 java.util.concurrent.ForkJoinPool,它实际上是 ExecutorService 的一个子类。
image.png

生成实例

两个构造函数来创建ForkJoinPool实例

ForkJoinPool()
ForkJoinPool(int parallelism)
ForkJoinPool(int parallelism,
                       ForkJoinWorkerThreadFactory factory,
                        UncaughtExceptionHandler handler,
                        boolean asyncMode)
  • 其线程数等于计算机的处理器数(使用 runtime.getuntime ()方法)
    image.png
    -允许定义将要使用的线程数
    image.png
    就像 ExecutorService 执行由 Runnable 或 Callable 表示的任务一样,在 Fork/Join 框架中,任务通常由以下两个子类表示

//TODO


这个家伙很懒,啥也没有留下😋