From Javadoc for ForkJoinTask::fork method:
Arranges to asynchronously execute this task in the pool the current task is running in....
So when we invoke fork method on a ForkJoinTask, does it start executing the task or just prepares the infrastructure needed, waiting for some other method to be called for actual execution to happen?