Sobes.tech
Back to questions
Junior — Middle
63

Используется ли механизм взаимного исключения (Mutex) для синхронизации потоков в Python?

Answer from AI

sobes.tech AI

Да, в Python для синхронизации потоков используется механизм взаимного исключения — класс Lock из модуля threading. Он обеспечивает, что только один поток может выполнять критическую секцию кода в данный момент времени, предотвращая состояния гонки.

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

import threading

lock = threading.Lock()
shared_resource = 0

def thread_safe_increment():
    global shared_resource
    with lock:  # захват блокировки
        shared_resource += 1
        print(shared_resource)

Таким образом, Lock в Python выполняет роль mutex, обеспечивая взаимное исключение при работе с общими ресурсами.