python 线程,进程,携程

进程正在进行的一个过程或者说一个任务,而负责执行任务的则是CPU,进程本身是一个抽象的概念,即进程就是一个过程、一个任务。

    进程之间是如何做到并发的:CPU在各个任务之间来回的进行切换,并在切换的过程当中保存当前 

    进程的执行状态(保存蛋糕的执行过程)。

    进程与程序的区别:程序相当于菜谱,而进程相当于做菜的整个过程。

    并行和并发:

        并行:多个任务同时运行,只有具备多个cpu才能实现并行,含有几个cpu,也就意味着在同一时刻可以执行几个任务。 

        并发:是伪并行,即看起来是同时运行的,实际上是单个CPU在多道程序之间来回的进行切换。

    同步与异步:

        同步就是指一个进程在执行某个请求的时候,若该请求需要一段时间才能返回信息,那么这个进程将会一直等待下去,直到收到返回信息才继续执行下去。 
        异步是指进程不需要一直等下去,而是继续执行下面的操作,不管其他进程的状态。当有消息返回时系统会通知进行处理,这样可以提高执行的效率。 
        打电话的过程就是同步通信,发短信时就是异步通信。

    进程:

    创建进程的两种方式 
        第一:继承Process类,并重写run方法 
        第二:直接通过进程类Process进行创建,直接指定target

    

    

    

    进程池:

    

    

线程一个进程里面至少有一个控制线程,进程的概念只是一种抽象的概念,真正在CPU上面调度的是进程 
里面的线程 如同一个QQ开启多个对话窗口

    单线程:

    

    多线程:

    

    Python中线程的特点 
        在其他语言当中,一个进程里面开启多个线程,每个线程都可以给一个cpu去使用,但是在python当中,在同一时刻,一个进程当中只能有一个线程处于运行状态。


协程: 又称微线程

    协程看上去是子程序,但执行过程中,在子程序内部可中断,然后转而执行别的子程序,在适当的时候再返回来接着执行。

    协程有何优势?

        最大的优势就是协程极高的执行效率。因为子程序切换不是线程切换,而是由程序自身控制,因此,没有线程切换的开销,和多线程比,线程数量越多,协程的性能优势就越明显。

        第二大优势就是不需要多线程的锁机制,因为只有一个线程,也不存在同时写变量冲突,在协程中控制共享资源不加锁,只需要判断状态就好了,所以执行效率比多线程高很多。

    一句话总结协程的特点:

        “子程序就是协程的一种特例。”









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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值