Python 爬阶梯 | 使用 Python 几行代码就能轻松操作多线程和多进程
在上一篇你已经了解了并发的一些相关的概念了,那么今天就来用 Python 实际使用一下多线程和多进程。
我们知道,多线程和多进程的主要用途就是提高程序和 CPU 的使用率,从而达到高效运行,看起来像同一时间能完成多件事情。
threading(线程) 和 processing (进程)的区别
在 Python 中的 threading(线程) 和 processing (进程)之中的区别是:
本文隐藏内容 登陆 后才可以浏览
而 map 是传入可迭代对象从而调用具体方法的:
这两个方法会常常用到,当然,futures 还有一些比较好用的方法需要你知道,下篇告诉你。
开启多线程后,代码里边有返回值,多线程执行完后,我该怎么调用这些返回值供后续函数使用呢?
你的线程在 submit 的时候可以得到一个对象:
future = executor.submit(…)
获取返回值:
future.result()
请问使用ThreadPoolExecutor后如何退出呢,我有一个While(True),每次启动10个线程,假设其中某个线程设置一个Flag为True时,整个程序要退出。
我写了如下的代码,但是好像后台的线程还是一直在运行
if Flag == True:
sys.exit()
你可以调用 pool 的 shutdownNow() 方法。