怎么在python中实现greenlet交替运行

本篇文章给大家分享的是有关怎么在python中实现greenlet交替运行,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

创新互联公司是一家专注于网站制作、成都网站制作与策划设计,晋城网站建设哪家好?创新互联公司做网站,专注于网站建设10余年,网设计领域的专业建站公司;建站业务涵盖:晋城等地区。晋城做网站价格咨询:18982081108

Python的优点有哪些

1、简单易用,与C/C++、Java、C# 等传统语言相比,Python对代码格式的要求没有那么严格;2、Python属于开源的,所有人都可以看到源代码,并且可以被移植在许多平台上使用;3、Python面向对象,能够支持面向过程编程,也支持面向对象编程;4、Python是一种解释性语言,Python写的程序不需要编译成二进制代码,可以直接从源代码运行程序;5、Python功能强大,拥有的模块众多,基本能够实现所有的常见功能。

1、greenlet说明

greenlet是一个基于Greenlet实现的网络库,它使用greenlet来实现协同程序。其基本思想是,当greenlet遇到IO操作时,例如访问网络时,它会自动切换到其他greenlet,直到IO操作完成,然后在适当的时候切换回继续执行。因为IO操作非常耗时,而且常常使程序处于等待状态,所以使用gevent来自动切换协程,可以确保运行的是greenlet,而非等待IO操作。

2、实例

可以通过gevent.sleep()交出控制权:

def test(n):
    for i in range(n):
        print(gevent.getcurrent(), i)
        gevent.sleep(1)

当然在实际的代码里,我们不会用gevent.sleep()去切换协程,而是在执行到IO操作时gevent会自动完成,所以gevent需要将Python自带的一些标准库的运行方式由阻塞式调用变为协作式运行。

以上就是怎么在python中实现greenlet交替运行,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注创新互联行业资讯频道。


文章题目:怎么在python中实现greenlet交替运行
文章源于:http://scyanting.com/article/gdiedg.html