Closed r00pal closed 4 years ago
Thanks for updating the doc but it might improvement based on the parseq execution model (refer the video I forwarded). Regarding your issue with Task.callable(), I'll check for any issues since .par shouldn't be dependent on this.
Task.par only create another wrapper task, a ParTask, and when any task submitted to the engine it will be allocated a (single) thread. So, when you do Task.blocking( task, engine), the task is submitted to engine directly. when you do partask = task.par(tasks), engine.run(partask), the partask will take a single thread, and all tasks within it will run on the same thread as the partask. I think we should have an option for task.par to run in max allowed number of threads. But that would expose the lower level API and make it harder to understand.
63
Updating javadoc for Task.par() when parallel tasks are actually executed in parallel. Current documentation is kind of misguiding, it should be clearly menntioned that Tasks composed using Task.callable will not be executed in parallel.