CPU 密集型任务和 IO 密集型任务分别选择多进程multiprocessing.Pool.map

和多线程库multiprocessing.dummy.Pool.map

import os 
import PIL 
from multiprocessing import Pool 
from PIL import Image
SIZE = (75,75)
SAVE_DIRECTORY = 'thumbs'
def get_image_paths(folder):
    return (os.path.join(folder, f) 
            for f in os.listdir(folder) 
            if 'jpeg' in f)
def create_thumbnail(filename): 
    im = Image.open(filename)
    im.thumbnail(SIZE, Image.ANTIALIAS)
    base, fname = os.path.split(filename) 
    save_path = os.path.join(base, SAVE_DIRECTORY, fname)
    im.save(save_path)
if __name__ == '__main__':
    folder = os.path.abspath(
        '11_18_2013_R000_IQM_Big_Sur_Mon__e10d1958e7b766c3e840')
    os.mkdir(os.path.join(folder, SAVE_DIRECTORY))
    images = get_image_paths(folder)
    pool = Pool()
    pool.map(creat_thumbnail, images)
    pool.close()
    pool.join()

 

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-03-04
  • 2021-11-22
  • 2022-12-23
  • 2021-12-07
  • 2022-12-23
猜你喜欢
  • 2021-11-28
  • 2021-09-11
  • 2021-11-21
  • 2022-12-23
  • 2022-12-23
  • 2021-12-15
  • 2021-07-19
相关资源
相似解决方案