The Java ForkJoinPool helps you break down large tasks into smaller subtasks which can be executed in parallel using all, or some, of the CPU cores available in your computer. The Java ForkJoinPool thus helps you implement a fork and join type of work break down and parallelism.
The Java ForkJoinPool implements a work stealing algorithm which further helps utilize the CPU cores in your computer more efficiently. This work stealing algorithm is also explained in this Java ForkJoinPool tutorial.
Chapters:
0:00 Java ForkJoinPool introduction
1:18 Dividing tasks into subtasks
1:59 Fork and join process
3:48 Work stealing
7:27 Creating a ForkJoinPool code example
9:16 Submitting actions and tasks to a ForkJoinPool
10:56 RecursiveAction vs. RecursiveTask
11:55 RecursiveAction implementation example
18:28 RecursiveTask implementation example
22:32 Additional ForkJoinPool methods
X (Twitter): @jjenkov
LinkedIn: https://www.linkedin.com/in/jakob-jenkov-4a3a8/
Java ForkJoinPool tutorial - text:
https://jenkov.com/tutorials/java-util-concurrent/java-fork-and-join-forkjoinpool.html
Java Concurrency tutorial - text:
https://jenkov.com/tutorials/java-concurrency/index.html
Java Concurrency video playlist:
https://www.youtube.com/playlist?list=PLL8woMHwr36EDxjUoCzboZjedsnhLP1j4
Java Code Examples GitHub Repository:
https://github.com/jjenkov/java-examples