Toward the very end, the author gives a brief one paragraph explanation of why they didn&#x27;t use multiple threads:<p><pre><code>    Obviously one idea is to use threads. It’s common to have a separate thread
    for dealing with signals and combining threads with semaphores, etc. would
    allow GNU make to wait on two different types of asynchronous events
    simultaneously. This was rejected because so far GNU make was single-threaded,
    and requiring multi-threading was deemed too much of a price to pay.
</code></pre>
I&#x27;m confused as to why adding multi-threading would be quite so onerous. As I understand it, one could restrict the use of threads to that specific feature and thus avoid large architectural changes.<p>Do I not understand how Make is designed, or is &quot;the price to pay&quot; in reference to performance or some other metric?