1. 程式人生 > >python 多執行緒任務處理

python 多執行緒任務處理

from PIL import Image
import urllib.request
def thumbnail_image(url,size=(64,64),format='.png'):
    im = Image.open(urllib.request.urlopen(url))
    pieces = url.split('/')
    filename = ''.join((pieces[-2],'_',pieces[-1].split('.')[0],'_thumb',format))
    im.thumbnail(size, Image.ANTIALIAS)
    im.save(filename)
    print('Saved', filename)

img_urls = ['https://dummyimage.com/256x256/000/fff.jpg',
            'https://dummyimage.com/320x240/fff/00.jpg',
            'https://dummyimage.com/640x480/ccc/aaa.jpg',
            'https://dummyimage.com/128x128/ddd/eee.jpg',
            'https://dummyimage.com/720x720/111/222.jpg']
for url in img_urls:
    thumbnail_image(url) #單執行緒


import threading
for url in img_urls:
    t=threading.Thread(target=thumbnail_image,args=(url,)) #多執行緒處理
    t.start()