Python 爬阶梯 | 使用 Python 几行代码就能轻松操作多线程和多进程

在上一篇你已经了解了并发的一些相关的概念了,那么今天就来用 Python 实际使用一下多线程和多进程。

我们知道,多线程和多进程的主要用途就是提高程序和 CPU 的使用率,从而达到高效运行,看起来像同一时间能完成多件事情。

threading(线程) 和 processing (进程)的区别

在 Python 中的 threading(线程) 和 processing (进程)之中的区别是:

本文隐藏内容 登陆 后才可以浏览
而 map 是传入可迭代对象从而调用具体方法的:

这两个方法会常常用到,当然,futures 还有一些比较好用的方法需要你知道,下篇告诉你。

4 Replies to “Python 爬阶梯 | 使用 Python 几行代码就能轻松操作多线程和多进程”

  1. 开启多线程后,代码里边有返回值,多线程执行完后,我该怎么调用这些返回值供后续函数使用呢?

    1. 小帅b说道:

      你的线程在 submit 的时候可以得到一个对象:

      future = executor.submit(…)

      获取返回值:

      future.result()

  2. rlysyy说道:

    请问使用ThreadPoolExecutor后如何退出呢,我有一个While(True),每次启动10个线程,假设其中某个线程设置一个Flag为True时,整个程序要退出。
    我写了如下的代码,但是好像后台的线程还是一直在运行

    if Flag == True:
    sys.exit()

    1. 小帅b说道:

      你可以调用 pool 的 shutdownNow() 方法。

发表回复