Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Как запустить несколько процессов на Питоне?

Access Denied Мастер (1180), на голосовании 2 недели назад
Гигачат мне выдал такой вот пример для запуска нескольких процессов:
 import multiprocessing as mp 

def worker(queue):
# Получаем данные из очереди
data = queue.get()
# Обрабатываем данные
result = data ** 2
# Возвращаем результат обратно в очередь
queue.put(result)

if __name__ == '__main__':
# Создаем очередь для передачи данных между процессами
queue = mp.Queue()
# Количество процессов
num_processes = 4
# Запускаем процессы
processes = []
for _ in range(num_processes):
p = mp.Process(target=worker, args=(queue,))
processes.append(p)
p.start()
# Отправляем данные в очередь
for i in range(10):
queue.put(i)

# Ожидаем завершения всех процессов
for p in processes:
p.join()

# Выводим результаты обработки
results = []
while not queue.empty():
results.append(queue.get())
print("Результаты:", results)
У меня уже есть своя определенная функция, принимающая один аргумент, а также список из элементов, для каждого из которых я хочу запустить как бы "экземпляр" этой функции.
Допустим, функция "my_func", а список элементов [1, 2, 3, 4,.....].
Подскажите, что нужно изменить в этом коде для моей задачи? Совсем не понимаю вот этой конструкции с queue
Голосование за лучший ответ
Ivan Sviridov Оракул (69193) 1 месяц назад
просто запусти несколько раз, в линуксе это элементарно делается.
Похожие вопросы