Конкурентность и параллельность

Подкрадываясь к асинхронному, многопоточному и параллельному коду нужно сначала изучить основы и понять используемые термины. Конкурентность (concurrency) - запуск на выполнение сразу нескольких задач (не обязательно в 1 момент времени выполняется несколько). Зависит от ПО. Первые ОС с процессором без ядер -использовали только ее. Параллельность (parallel) - конкурентность, когда 2 задачи выполняются одновременно. Зависит от железа. Вы не можете одновременно (!) выполнять больше задач, чем есть ядер в системе. GIL (Global Interpreter Lock) - глобальная блокировка интерпретатора, механизм гарантирующий, что в любой момент времени выполняется только 1 инструкция в питоне. Задачи для Python могут быть: CPU-bound - зависит от мощности процессора IO-bound - зависит от системы ввода/вывода threading - IO-bound задачи asyncio - IO-bound задачи multiprocessing - любые задачи Если есть непреодолимое желание и возможность поддержать канал то есть кошелек Юмани 410011506612886 Читать! Фаулер М. “Asyncio и конкурентное программирование на Python“ #term-global-interpreter-lock #Python #PythonRussian #PyCharm #Питон #Программирование
Back to Top