Что такое мьютекс

Python Senior Без компании
Что такое мьютекс
Ответы
Мьютекс (mutex, от mutual exclusion) — это примитив синхронизации, который обеспечивает эксклюзивный доступ к общему ресурсу в многопоточной среде. Только один поток может захватить мьютекс, остальные будут ждать его освобождения. Пример использования в Python с `threading`: ``` import threading shared_resource = 0 lock = threading.Lock() def increment(): global shared_resource with lock: # Автоматически захватывает и освобождает shared_resource += 1 threads = [threading.Thread(target=increment) for _ in range(10)] for t in threads: t.start() for t in threads: t.join() print(shared_resource) # Гарантированно 10 ``` Ключевые особенности: - Гарантирует атомарность операций - Предотвращает race condition - Может быть блокирующим (thread будет ждать) или неблокирующим (try_lock) - В Python реализован через `threading.Lock`