第十章:使用进程、线程和协程提供并发性-concurrent.futures:管理并发任务池-上下文管理器

10.6.7 上下文管理器
执行器会与上下文管理器合作,并发地运行任务并等待它们都完成。当上下文管理器退出时,会调用执行器的shutdown()方法。

from concurrent import futures


def task(n):
    print(n)


with futures.ThreadPoolExecutor(max_workers=2) as ex:
    print('main: starting')
    ex.submit(task,1)
    ex.submit(task,2)
    ex.submit(task,3)
    ex.submit(task,4)

print('main: done')

离开当前作用域时如果要清理线程或进程资源,那么用这种方式使用执行器就很有用。
运行结果:
第十章:使用进程、线程和协程提供并发性-concurrent.futures:管理并发任务池-上下文管理器_第1张图片

你可能感兴趣的:(Python标准库)