Python, многопоточность слишком медленная, многопроцессорная

Я новичок в многопроцессорной обработке,

Я кое-что знаю о многопроцессорности, но мне нужно увеличить скорость этого вычисления, надеюсь, с многопроцессорной обработкой:

Описание примера: отправляет строку в поток, изменяет строку + тест производительности, отправить результат на печать.

 из потока импорта 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, пожалуйста

5
задан Rhys 8 January 2012 в 02:44
поделиться