У меня есть простая программа, которая изменяет размер пакета изображений в Python:
def resize(image_path_list):
# open image
# resize image
# rename image
# save new image
Я пытаюсь увеличить скорость обработки с помощью многопоточности - которая была выбрана вместо многопроцессорной, потому что A) это импортированный процесс (из графического интерфейса пользователя), поэтому многопроцессорная обработка под именем __main__ == не была выбрана и B) Я решил, что открытие и закрытие файла с диска было моей возможностью для оптимизации.
Однако, используя следующую реализацию потока, я не получил увеличения скорости
(64,1 против 64,05 с) - я ожидал вдвое:
t1 = threading.Thread(target=resize(first_half_of_list))
t2 = threading.Thread(target=resize(second_half_of_list))
t1.start()
t2.start()
t1.join()
t2.join()
Я тестирую серию из 150+ изображений размером 1 МБ +, есть мысли?