python多线程、进程、协程以及并发、并行

1、多线程、多进程、协程

1.1 进程和线程

1.2 协程

官方文档:asyncio — 异步 I/O
文章1:进程和线程、协程的区别
文章2:Python协程原理介绍及基本使用
文章3:Python的协程异步IO(asyncio)详解
文章4:探索 Flask 对 asyncio 的支持

2、python线程安全

python多线程下数据安全问题

3、python和java比较

(1)python 多线程是假的。

  • 因为GIL全局锁的存在,即使多线程下也只是让他们交替获得GIL锁,即每个线程都可以执行,但也只是“交替”执行,而不是真正的同时执行!同一时间下,即使是多CPU,也只有1个线程可以获得GIL锁,即也只能有一个线程可执行
  • python下多进程并行是真的。

(2)java下,多线程并发可以实现并行。

  • 如果是单个CPU,那效果和python多线程是一样的。
  • 如果是多个CPU,每个CPU上的线程互不影响,就会出现多线程下、同一时间点下、不同CPU上都有线程在跑,这样就真正实现了并发下的并行!
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值