Задача взяла lock() и остановила весь рантайм: пять ошибок с блокировками в async Rust
<img src="https://habrastorage.org/getpro/habr/upload_files/0f9/645/09d/0f964509d12dd37c6161ac4f270a8f96.jpg" /><p>В async Rust одна неудачно взятая блокировка может остановить весь рантайм — вместе с таймерами и задачами, которые должны были её отпустить. Разберём пять типичных ловушек с <code>Mutex</code> и <code>RwLock</code> и посмотрим, почему привычки из синхронного кода здесь дают сбой.</p> <a href="https://habr.com/ru/articles/1077262/?utm_source=habrahabr&utm_medium=rss&utm_campaign=1077262#habracut">Читать разбор</a>
