Understanding behavior of BlockedIndefinitelyOnMVar exception