Now it is time for the truth. The mission is to parallelize the execution of the terms of the Fibonacci series when multiple input values are given. For didactical purposes, we will fix the input values in the four elements and the four threads to process each element, simulating a perfect symmetry among workers and tasks to be executed. The algorithm will work as follows:
First, a list will store the four values to be calculated and the values will be sent into a structure that allows synchronized access of threads.
After the values are sent to the synchronized structure, the threads that calculate the Fibonacci series need to be advised that the values are ready to be processed. For this, we will use a thread synchronization mechanism called
Condition
. (TheCondition
mechanism is one of the Python objects that offer data access synchronization mechanisms shared among threads; you can learn more at http://docs.python...