title: Mutex the right way
body: <p>What is the right way to "synchronize" function which mutates shared state using Mutex? Using Mutex within a coroutine started with <code>launch()</code> or <code>async()</code> works as expected, but if I start a coroutine with <code>runBlocking()</code> the thread looks like blocked (locked) for a very long time. The thing is that the function might be called from multiple threads and I cannot solve this with thread confinement. What's the right way to use Mutex in this scenario?</p>