我们根据运行结果来分析一下。我们使用 submit 方法来往线程池中加入一个task,submit返回一个 Future对象 ,对于Future对象可以简单地理解为一个在未来完成的操作。在第一个print语句中很明显因为time.sleep(2)的原因我们的future1没有完成,因为我们使用time.sleep(3)暂停了主线程,所以到第二个print语句的时候我们线程池里的任务都已经全部结束。
ziwenxie :: ~ » python example1.pyFalseTruehelloworld# 在上述程序执行的过程中,通过ps命令我们可以看到三个线程同时在后台运行ziwenxie :: ~ » ps -eLf | grep pythonziwenxie 8361 7557 8361 3 3 19:45 pts/0 00:00:00 python example1.pyziwenxie 8361 7557 8362 0