Поскольку я новичок в использовании параллелизма, я не понимаю, когда использовать различные библиотеки параллелизма Python. Насколько я понимаю, многопроцессорность, многопоточность и асинхронное программирование являются частью параллелизма, тогда как многопроцессорность является частью подмножества параллелизма, называемого параллелизмом.
Я искал в Интернете разные варианты способы реализации параллелизма в Python, и я наткнулся на многопроцессорную библиотеку, ProcessPoolExecutor() и ThreadPoolExecutor() concurrenct.futures, а также asyncio. Что меня смущает, так это разница между этими библиотеками. Особенно то, что делает многопроцессорная библиотека, поскольку у нее есть такие методы, как Pool.apply_async, выполняет ли она также работу asyncio? Если да, то почему это называется многопроцессорностью, если это другой метод достижения параллелизма, чем asyncio (несколько процессов вместо совместной многозадачности)?
Подробнее здесь: https://stackoverflow.com/questions/613 ... -futures-i