Использовать многопроцессорность в Python с функциями типа «void» ⇐ Python

Программы на Python
Anonymous
Использовать многопроцессорность в Python с функциями типа «void»

Сообщение Anonymous »

Рассмотрим следующие коды на Python:

Код: Выделить всё

from multiprocessing import Pool
data = [4] * 10

def update(j):
data[j] += j ** 2

def solver():
with Pool(8) as po:
po.map(update, range(10))

if __name__ == "__main__":
solver()
В результате список данных не обновляется. Я хочу найти безопасный способ обновления данных таким образом с использованием многопроцессорной обработки.
Я спросил ChatGPT. Он сообщил мне, что список данных не используется разными пулами. Я не уверен, что это правильная интерпретация вопроса. Как решить эту проблему элегантно?

Подробнее здесь: https://stackoverflow.com/questions/790 ... -functions

Вернуться в «Python»