Как вызвать процесс по имени или тегу в python - PullRequest
1 голос
/ 08 июля 2010

Я использую многопроцессорный модуль.Этот модуль работает в очереди, которая является его случайным процессом выбора и назначает вход из очереди.

Я хочу решить, какой процесс будет работать с какой записью в очереди

Вот мои требования,

Я передам 2 параметра в очередь

  1. Имя процесса инициатора
  2. Действие / метод (Что собирается делать процесс)

Его должна пройти очередь. Вход только в данный процесс.

1 Ответ

1 голос
/ 08 июля 2010

multiprocessing.Process объекты принимают необязательный аргумент имени при инициализации. Вы можете использовать это имя в качестве ключа в словаре:

child_procs = {'name1' : Process(target=myprocfunc, name='name1'), ...}

Что касается IPC между родительским процессом и дочерними процессами, у вас должно быть все в порядке, просто поддерживая отдельный multiprocessing.Queue для каждого дочернего процесса. Вам понадобится объект / функция распределения задач, чтобы назначить работу. Эта функция, вероятно, будет отвечать за выталкивание задачи из основной / центральной очереди, а затем назначение ее правильной очереди дочернего процесса (в зависимости от архитектуры, которую я блестяще отвечаю на ваш вопрос).

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