Зачем нужен пакет multiprocessing? Заключение

zachem nuzhen paket multiprocessing zakljuchenie Системные инструменты параллельного выполнения

Как следует из примеров в этом разделе, пакет multiprocessing представляет собой мощную альтернативу, объединяющую в себе переносимость и удобство потоков выполнения со способностью к параллельному выполнению, свойственной процессам, и предлагает дополнительные инструменты IPC для получения кодов возврата и решения других задач, сопутствующих параллельной обработке данных.

Хотелось бы надеяться, что данный раздел позволил вам глубже понять достоинства и недостатки пакета, обсуждавшиеся в начале раздела. В частности, его модель, основанная на выполнении отдельных процессов, препятствует свободному использованию общей памяти, как это делается в потоках выполнения, не позволяет передавать связанные методы и lambda-функции из-за ограничений, связанных с сериализацией, а также из-за особенности реализации механизма запуска процессов в Windows. Кроме того, в Windows он требует, чтобы аргументы процесса были сериализуемыми объектами, что препятствует их использованию в серверах для организации взаимодействий с клиентами.

Хотя он и не может служить универсальной заменой модуля threading, тем не менее во многих ситуациях пакет multiprocessing предлагает достаточно привлекательное решение. В частности, для задач параллельного программирования, когда ограничения пакета легко преодолимы, он способен предложить такие качества, как переносимость и производительность, которые отсутствуют в других, более низкоуровневых многозадачных инструментах Python.

К сожалению, в данной книге не так много места, чтобы дать более всесторонний охват этого пакета помимо этого краткого введения. За дополнительными подробностями обращайтесь к руководству по библиотеке Python. А теперь мы обратим наше внимание к следующей группе дополнительных инструментов запуска программ, знакомством с которыми закончим эту главу.

Использованная литература:
Марк Лутц — Программирование на Python, 4-е издание, I том, 2011

Оцените статью
Секреты программирования
Добавить комментарий