Встречается на собеседованиях • сегодня

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

Мьютекс (mutex, от mutual exclusion) — это примитив синхронизации, который обеспечивает эксклюзивный доступ к общему ресурсу в многопоточной среде. Только один поток может захватить мьютекс, остальные будут ждать его освобождения.

Пример использования в Python с threading:

python
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

text

Ключевые особенности:
- Гарантирует атомарность операций
- Предотвращает race condition
- Может быть блокирующим (thread будет ждать) или неблокирующим (try_lock)
- В Python реализован через `threading.Lock`
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы