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

8
Многопроцессорная обработка Python PicklingError: Can't pickle <type 'function'>
Мне жаль, что я не могу воспроизвести ошибку на более простом примере, а мой код слишком сложен для публикации. Если я запускаю программу в оболочке IPython вместо обычного Python, все работает хорошо. Я посмотрел некоторые предыдущие заметки по этой проблеме. Все они были вызваны использованием пула для вызова функции, определенной …

12
Как я могу восстановить возвращаемое значение функции, переданной multiprocessing.Process?
В приведенном ниже примере кода я хотел бы восстановить возвращаемое значение функции worker. Как я могу сделать это? Где хранится это значение? Пример кода: import multiprocessing def worker(procnum): '''worker function''' print str(procnum) + ' represent!' return procnum if __name__ == '__main__': jobs = [] for i in range(5): p = …

1
multiprocessing.Pool: В чем разница между map_async и imap?
Я пытаюсь научиться использовать multiprocessingпакет Python , но я не понимаю разницу между map_asyncи imap. Я заметил, что оба map_asyncи imapвыполняются асинхронно. Так, когда я должен использовать один по другому? И как я должен получить результат, возвращенный map_async? Должен ли я использовать что-то вроде этого? def test(): result = pool.map_async() …

2
Совместное использование очереди результатов между несколькими процессами
В документации к multiprocessingмодулю показано, как передать очередь процессу, запущенному с multiprocessing.Process. Но как я могу разделить очередь с запущенными асинхронными рабочими процессами apply_async? Мне не нужно динамическое объединение или что-то еще, просто способ для рабочих (многократно) сообщать о своих результатах обратно на базу. import multiprocessing def worker(name, que): que.put("%d …


3
Многопроцессорность Python: понимание логики `chunksize`
Какие факторы определяют оптимальный chunksizeаргумент в пользу таких методов multiprocessing.Pool.map()? .map()Похоже, что этот метод использует произвольную эвристику для размера фрагмента по умолчанию (поясняется ниже); что мотивирует этот выбор и существует ли более продуманный подход, основанный на какой-либо конкретной ситуации / настройке? Пример - скажи, что я: Пропускание iterableна .map()что ~ …

3
Можно ли запустить функцию в подпроцессе без потоковой передачи или написания отдельного файла / скрипта.
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 Я нашел только документацию по открытию подпроцессов с использованием отдельных скриптов. Кто-нибудь знает, как передать объекты функции или даже простой способ передать …
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.