最近在看《SmoothPython》这本书,想把自己的阅读笔记分享给大家。希望对有兴趣但没时间看这本书的人有所帮助和欣赏。(文中大部分文字和图片摘自《SmoothPython》一书,以及python官网)章节概述::concurrent.futures模块内容概要:使用concurrent.futuresfuture模块执行可调用对象通过ThreadPoolExecutor和ProcessPoolExecutor类实现的接口在不同的线程和进程中。这两个对象内部维护了一个工作线程或进程池,以及一个待执行的任务队列。Future组件(concurrent.futures.Future)是并发框架创建的这个类的一个实例,代表了一个未来要执行的事件。.Future对象有一个done方法,该方法返回一个布尔值,以确定由致命future链接的可调用对象是否已执行。如果执行完成,将通知客户端(通过add_done_callback)。BlockingI/OandGILGIL:GlobalInterpreterLock,由于CPython解释器不是线程安全的,GIL实现了一次只能有一个线程执行Python字节码,所以一个Python进程通常不能同时使用多个CPU核。Python中所有的I/O阻塞函数都会释放GIL,让其他线程运行。
