Почему модуль подпроцесса Python называется так, а не просто «процесс»? - PullRequest
0 голосов
/ 18 декабря 2018

Я новичок в потоках и процессах.Я пытался понять asyncio.Исследуя asyncio на Python-модуле Дуга Хеллингера в разделе «Параллельность» , я столкнулся с модулями multiprocessing, threading, signal и subprocess.

IБыло интересно, почему имя модуля subprocess было названо так.Почему модуль не называется процессом.И что в этом «суб» [имеется в виду ниже]?

Редактировать: забытое дополнение

Есть класс Popen, и я предполагаю, что 'P' обозначает процесс. Комментарий к коду Github говорит:

Popen (...): класс для гибкого выполнения команды в новом процессе

Doesn 't Существование класса Popen дает больше оснований для вызова модуля process вместо subprocess?

Ответы [ 2 ]

0 голосов
/ 18 декабря 2018

Процессы в большинстве операционных систем формируют родительско-дочерние отношения.Процессы, созданные другим процессом, называются дочерними процессами или подпроцессами этого процесса:

A дочерний процесс в вычислениях - это процесс, созданный другим процессом (родительский процесс).Этот метод относится к многозадачным операционным системам и иногда называется подпроцессом или традиционно подзадачей .

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

Модуль подпроцесса позволяет порождать новые процессы , подключаться ких каналы ввода / вывода / ошибок и получения их кодов возврата.

Он не имеет отношения к произвольным процессам, поэтому имеет смысл назвать его subprocess вместо просто process.

0 голосов
/ 18 декабря 2018
Подпроцесс

предоставляет API для создания и взаимодействия со вторичными процессами.

«sub» в имени модуля относится к тому факту, что все процессы, которые вы собираетесь здесь запустить, будут дочерними процессами вашего запущенного процесса Python.Они существуют для поддержки вашего кода Python.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...