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

Что такое mutex в многопоточности

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

Пример с ReentrantLock в Java:

java
import java.util.concurrent.locks.ReentrantLock;

public class Counter {
private final ReentrantLock lock = new ReentrantLock();
private int count = 0;

text
public void increment() {
    lock.lock();
    try {
        count++;
    } finally {
        lock.unlock();
    }
}

}

text

Ключевые особенности:
- Блокирует доступ другим потокам, пока не будет освобожден
- Может быть реализован как с ожиданием (blocking), так и без (tryLock)
- В Java представлен через synchronized, ReentrantLock и другие классы пакета java.util.concurrent.locks
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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