Creating a multithreaded application requires 4 major steps and of the four, the design and implementation part is not often discussed. The following rules will give you a better chance of writing the best and most useful threaded application:
• Identify accurate independent computations – simultaneous execution is not possible unless the executable similar operations can run independently of one another.
• Concurrent implementation should be at the highest level – during the analysis phase of the threading methodology, identify the hotspots – code segments that require the longest execution time – and if they can run parallel you will be able to get its maximum performance.
