Встречается на 2% собеседований по Python

Приведи пример атомарной операции

Атомарная операция — это операция, которая выполняется как единое целое без возможности прерывания. В Python для атомарных операций можно использовать модуль threading с блокировками или примитивы из модуля multiprocessing.

Пример с threading.Lock():

python
import threading

counter = 0
lock = threading.Lock()

def increment():
    global counter
    with lock:  # Блокировка гарантирует атомарность
        counter += 1

threads = []
for _ in range(100):
    t = threading.Thread(target=increment)
    threads.append(t)
    t.start()

for t in threads:
    t.join()

print(counter)  # Гарантированно выведет 100

Для простых операций (например, инкремент) можно использовать threading.RLock или атомарные операции из модуля multiprocessing.

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

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

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