Что такое конкурентность

Python Middle Без компании
Что такое конкурентность
Ответы
Конкурентность — это способ выполнения нескольких задач в перекрывающихся временных интервалах, необязательно параллельно. В Python конкурентность достигается через потоки (threading), процессы (multiprocessing) и асинхронное программирование (asyncio). **Пример с threading:** ``` import threading def task(): print("Выполняется задача в потоке") thread = threading.Thread(target=task) thread.start() thread.join() ``` **Пример с asyncio:** ``` import asyncio async def task(): print("Выполняется асинхронная задача") asyncio.run(task()) ``` **Ключевые отличия:** - Потоки используют GIL (Global Interpreter Lock), что ограничивает параллелизм для CPU-задач. - Асинхронность эффективна для I/O-операций, но требует поддержки со стороны кода (async/await). - Процессы полностью независимы и обходят GIL, но требуют больше ресурсов. Выбор инструмента зависит от типа задачи (CPU-bound vs I/O-bound).