• 技术文章 >Python技术 >Python基础教程

    python协程的作用

    小妮浅浅小妮浅浅2021-05-17 09:47:35原创2724

    1、作用分析

    (1)当IO密集时,使用协程会提高效率。

    (2)实现“遇到IO切换+保存状态”去欺骗操作系统,让操作系统误以为没有IO操作,拥有CPU执行权限,从而实现单线程下并发。

    2、实例

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    import time

    #遇到IO切换(gevent) + 保存状态

    from gevent import monkey  #猴子补丁

    monkey.patch_all()  #监听所有的任务是否有IO操作

    from gevent import spawn  #spawn(任务)

    from gevent import joinall

      

    COUNT = 10000000

    start = time.clock()

    def countdown(n):

        while n > 0:

            n -= 1

      

    sp1 = spawn(countdown, COUNT//2)

    sp2 = spawn(countdown, COUNT//2)

      

    # sp1.start()

    # sp2.start()

    # sp1.join()

    # sp2.join()

    joinall([sp1, sp2])  #等同于上面六步

      

    print('Time used:', time.clock() - start)

    # ('Time used:', 0.40398999999999985)

    以上就是python协程的作用,希望能对大家有所帮助。更多Python学习指路:python基础教程

    本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。

    专题推荐:python协程
    上一篇:python多进程取代多线程的探究 下一篇:python库是什么意思

    相关文章推荐

    • python协程中同步如何使用?• python协程里yield from如何使用?• php中协程shell_exec如何使用?• python用生成器实现协程• python协程的两大优势• python在协程中增加任务

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网