У меня есть функция slow_function
, которая занимает около 200 секунд для обработки job_title
, она читает и записывает в/из глобальной переменной.Запуск функции параллельно с разными аргументами - python
Нет никакого улучшения в работе с использованием этого кода. Я что-то упускаю, это, однако, возвращает те же результаты.
код работает пять категорий рабочих мест параллельно:
from threading import Thread
threads = []
start = time.time()
for job_title in self.job_titles:
t = Thread(target=self.slow_function, args=(job_title,))
threads.append(t)
# Start all threads
for x in threads:
x.start()
# Wait for all of them to finish
for x in threads:
x.join()
end = time.time()
print "New time taken for all jobs:", end - start
Пожалуйста, прочтите этот http://stackoverflow.com/questions/32657840/is-it-possible-to-avoid-locking-overhead-when-sharing- dicts-между-нитей-в-р/32659672 # 32659672. Я не уверен, что ваш вопрос дублирован или нет, но это может вам помочь. – Jimilian
Спасибо. Ваше решение сработало для меня. – Azhar