python多线程
code
# python3.2版本之后才有的; from concurrent.futures import ThreadPoolExecutor import time def job(num): print("这是一个%s任务" %(num)) return "执行结果:%s" %(num) if __name__ == '__main__': # 1. 实例化线城池对象,线城池里面包含5个线程执行任务; pool = ThreadPoolExecutor(max_workers=5) futures = [] for i in range(6): # 往线程池里面扔需要执行的任务, 返回的是一个对象(_base.Future()), f1 = pool.submit(job, i) futures.append(f1) time.sleep(2) print(futures[0].done(),'------------') print(futures[0].result()) print(futures[1].done(),'------------') print(futures[1].result())
Outputs
macname@MacdeMacBook-Pro py % python3 cccccc.py 这是一个0任务 这是一个1任务 这是一个2任务 这是一个3任务 这是一个4任务 这是一个5任务 True ------------ 执行结果:0 True ------------ 执行结果:1 macname@MacdeMacBook-Pro py %