Я новичок в многопроцессорной обработке,
Я кое-что знаю о многопроцессорности, но мне нужно увеличить скорость этого вычисления, надеюсь, с многопроцессорной обработкой:
Описание примера: отправляет строку в поток, изменяет строку + тест производительности, отправить результат на печать.
из потока импорта Thread класс Alter (поток): def __init __ (я, слово): Тема .__ init __ (сам) self.word = слово self.word2 = '' def run (self): # Изменить строку + скорость обработки теста для i в диапазоне (80000): self.word2 = self.word2 + self.word # Отправляем строку для изменения thread1 = Изменить ('фу') thread2 = Изменить ('бар') thread1.start () thread2.start () # дождитесь завершения обоих в то время как thread1.is_alive () == True: пройти в то время как thread2.is_alive () == True: пройти печать (thread1.word2) печать (thread2.word2)
В настоящее время это занимает около 6 секунд, и мне нужно, чтобы он прошел быстрее.
Я изучал многопроцессорность и не могу найти что-то эквивалентное приведенному выше коду. Я думаю, что мне нужно объединение , но примеры, которые я нашел, было трудно понять. Я хотел бы воспользоваться преимуществами всех ядер (8 ядер) multiprocessing.cpu_count ()
, но на самом деле у меня есть лишь обрывки полезной информации о многопроцессорности, которых недостаточно для дублирования приведенного выше кода.Если кто-то может указать мне правильное направление или еще лучше, приведите пример, который был бы очень признателен. Python 3, пожалуйста