Junior — Middle
94
Da li standardna biblioteka Pythona pruža mehanizam za implementaciju semafora?
Одговор од АИ
sobes.tech АИ
Да, стандартная библиотека Python предоставляет механизм для реализации семафоров в модуле threading.
Класс threading.Semaphore позволяет ограничить количество потоков, одновременно выполняющих определённый участок кода.
Пример использования:
import threading
sem = threading.Semaphore(3) # максимум 3 потока одновременно
def worker(num):
sem.acquire()
print(f"Поток {num} начал работу")
# критическая секция
sem.release()
for i in range(5):
threading.Thread(target=worker, args=(i,)).start()
Таким образом, стандартная библиотека Python содержит готовый класс для семафоров.