Вопросы с тегом «python-multiprocessing»

245
Многопроцессорная обработка Python PicklingError: Can't pickle <type 'function'>

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

190
Как я могу восстановить возвращаемое значение функции, переданной multiprocessing.Process?

В приведенном ниже примере кода я хотел бы восстановить возвращаемое значение функции worker. Как я могу сделать это? Где хранится это значение? Пример кода: import multiprocessing def worker(procnum): '''worker function''' print str(procnum) + ' represent!' return procnum if __name__ ==...

184
multiprocessing.Pool: В чем разница между map_async и imap?

Я пытаюсь научиться использовать multiprocessingпакет Python , но я не понимаю разницу между map_asyncи imap. Я заметил, что оба map_asyncи imapвыполняются асинхронно. Так, когда я должен использовать один по другому? И как я должен получить результат, возвращенный map_async? Должен ли я...

96
Совместное использование очереди результатов между несколькими процессами

В документации к multiprocessingмодулю показано, как передать очередь процессу, запущенному с multiprocessing.Process. Но как я могу разделить очередь с запущенными асинхронными рабочими процессами apply_async? Мне не нужно динамическое объединение или что-то еще, просто способ для рабочих...

84
Многопроцессорность Python: понимание логики `chunksize`

Какие факторы определяют оптимальный chunksizeаргумент в пользу таких методов multiprocessing.Pool.map()? .map()Похоже, что этот метод использует произвольную эвристику для размера фрагмента по умолчанию (поясняется ниже); что мотивирует этот выбор и существует ли более продуманный подход,...

83
Можно ли запустить функцию в подпроцессе без потоковой передачи или написания отдельного файла / скрипта.

import subprocess def my_function(x): return x + 100 output = subprocess.Popen(my_function, 1) #I would like to pass the function object and its arguments print output #desired output: 101 Я нашел только документацию по открытию подпроцессов с использованием отдельных скриптов. Кто-нибудь знает,...