&gt;<i>&quot;It&#x27;s a premature optimization that makes coding and debugging more difficult.&quot;</i><p>Going multi-threaded and dealing with semaphores and mutexes also makes coding and debugging more difficult. It&#x27;s all about trade-offs.