A race condition is a concurrency defect in which a result depends on the timing or interleaving of operations from multiple threads. Non-blocking parallel combinators such as map2 are especially vulnerable when results arrive in different orders. section 7.3.4
Combining parallel results safely
A non-blocking map2 must wait for both Par results before applying f. An actor receives either result, processes one message at a time, stores the first arrival, and combines the values when the second arrives. This avoids unsynchronized access to shared intermediate state. section 7.3.4



















