The key new features in ForkJoinPools are the worker thread task queues and work stealing. These make ForkJoinPool suitable for all scenarios in which tasks schedule further tasks during execution. Practice has shown that ForkJoinPools achieve good results in scenarios with splitting (such as the MapReduce example) and are more robust than ThreadPoolExecutors. ForkJoinPools also have considerable potential in event-driven scenarios (such as actor scheduling) where some account needs to be taken of fairness. Recent developments based on ForkJoinPool include additional optimisation features, and it will be interesting to see where this particular journey leads.
Dr. Patrick Peschlow is an expert in the Java Virtual Machine and has many years of experience in developing parallel and distributed Java applications. He works as a performance engineer at codecentric AG and is currently involved in implementing a highly scalable cloud application.