Python基础19——进程、线程与协程

进程>线程>协程

进程在Linux中用fork调用,在Windows中用multiprocessing 里的process来调用

进程,可以理解为程序,线程可以理解为程序里的功能,或者说窗口,而协程就是更合理地分配资源,对资源进行调度的

进程阻塞式和非阻塞式

进程池:Pool

非阻塞式:进程池名称.apply_async()全部添加至队列,立刻返回,没有等其他进程执行完毕再返回,回调函数是等任务完成之后调用

阻塞式:进程池名称.apply()添加一个执行一个,等结束后才添加下一个

.run():只是运行而不另开进程

.start()开进程且运行

进程间的通信:

Queue()

.put():放入

.get():得到

.qsize():大小

.empty():判断是否为空

.full():判断是否为满

.close()添加任务结束

.join()开始

线程

threading.Thread()

自带同步锁GIL,数大了就会自动解锁

lock=threading.lock():上锁

lock.acquire():请求得到锁

lock.release():释放锁

协程

生成器 yield

greenlet:完成协程任务

通过.switch()来完成

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值