Что такое mutex _ Cинхронизация потоков _ Многопоточное программирование _ C++ #6
Mutex vs ReadWriteLock. В чём разница?
Когда проводила собеседования, то заметила, что многие говорят именно про Mutex. Я его раньше его не использовала, поэтому стало интересно разобраться. Что такое Mutex? Mutex (Mutual Exclusion — взаимное исключение) — это инструмент для синхронизации, который гарантирует, что только один поток будет выполнять определенный участок кода в одно и то же время. Как устроено: внутри Mutex есть флаг, который указывает, занят ли ресурс или нет. Если поток пытается захватить уже занятый Mutex, он добавляется в некую очередь ожидания...
Использование мьютекса в Go (Golang) — с примерами
В этом посте мы обсудим, почему мы используем мьютексы в Go, и узнаем, как использовать мьютекс для блокировки данных и исправления условий гонки. Go позволяет нам одновременно запускать код с помощью горутин. Однако, когда параллельные процессы обращаются к одному и тому же фрагменту данных, это может привести к race conditions. Мьютексы — это структуры данных, предоставляемые пакетом sync . Они могут помочь нам заблокировать разные разделы данных , чтобы только одна горутина могла получить к ним доступ в каждый момент времени...