Python多线程

两个模块:

_thread和threading,_thread是低级模块,threading是高级模块,对_thread进行了封装。绝大多数情况下,我们只需要使用threading这个高级模块
t = threading.Thread(target=loop, name='LoopThread')
t.start()
t.join()

lock = threading.Lock()
lock.acquire()
lock.release()
Python解释器由于设计时有GIL全局锁,导致了多线程无法利用多核。多线程的并发在Python中就是一个美丽的梦

ThreadLocal

一个ThreadLocal变量虽然是全局变量,但每个线程都只能读写自己线程的独立副本,互不干扰。ThreadLocal解决了参数在一个线程中各个函数之间互相传递的问题

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 关于Python多线程的概述 由于GIL的存在,Python的多线程在CPU密集型任务并没有多大的优势,任何Pyt...
    千鸟月读阅读 3,547评论 0 0
  • 首先引用廖老师的一句话:Python解释器由于设计时有GIL全局锁,导致了多线程无法利用多核。多线程的并行在Pyt...
    玩阿轲睡妲己阅读 5,518评论 0 19
  • 环境 xubuntu anaconda pycharm python https://www.cnblogs.co...
    Ericoool阅读 5,927评论 0 0
  • 一文读懂Python多线程 1、线程和进程 计算机的核心是CPU,它承担了所有的计算任务。它就像一座工厂,时刻在运...
    星丶雲阅读 5,370评论 0 4
  • 平常岁月,平凡你我,大概率也不会经历国仇家恨,枪林弹雨,生死契阔。 但你的青春,应该也有过英雄梦吧。 你也去追问自...
    懒无念阅读 1,702评论 2 1

友情链接更多精彩内容