• 协程


    协程

    • 一个线程下单位
    • 协程是程序员自己编制出来的,是不被操作系统所承认的,不受操作系统的控制,需要我们调用模块去实现协程
    • 他是处理线程的io时可以使用协程,加快运行速度,因为GIL锁的存在,所以我们使用到线程去运行代码时,其实就是处理io密集型的代码,这个时候如果一个线程下面,有多个io,那么如果我们不去处理,他是会按照串行的方式去运行代码的,那样很耗费时间,我们协程就是把下面的io密集型的代码,改变成并发的模式去运行,节省时间,加快运行速度
    • 协程之后在io密集型下才有意义
    from gevent import monkey;monkey.patch_all()
    import gevent
    import time
    
    def foo():
        print(1)
        time.sleep(3)
        print(2)
    
    def foo1():
        print(3)
        time.sleep(3)
        print(4)
    start = time.time()
    g1 = gevent.spawn(foo)
    g2 = gevent.spawn(foo1)
    g1.join()
    g2.join()
    end = time.time()
    print(end-start)
    
    # 代码运行结果
        1
        3
        2
        4
        3.0039689540863037
    
  • 相关阅读:
    shell得到两个文件的差集
    shell 单引号&双引号的使用
    kubernetes session and 容器root权限
    docker 使用网络以及容器互联
    倒计时练习
    会话控制
    XML
    AJAX实现搜索智能提示
    弹窗显示详情练习
    三级联动
  • 原文地址:https://www.cnblogs.com/xiongchao0823/p/11552491.html
Copyright © 2020-2023  润新知