python中gevent库的用法详情

 更新时间:2022年07月18日 09:38:16   作者:IT之一小佬  
这篇文章主要介绍了python中gevent库的用法详情,Greenlet全部运行在主程序操作系统的过程中,但是它们是协作调度的,文章围绕主题展开详细的内容介绍,具有一定的参考价值

前言:

  • 1、gevent库可以轻松实现并发同步或异步编程。gevent中使用的主要模式是Greenlet,它是以C扩展模块的形式访问Python的轻量级协程。
  • 2、Greenlet全部运行在主程序操作系统的过程中,但是它们是协作调度的。

安装gevent库:

pip install gevent

示例代码1:

from gevent import monkey  # 为了能识别time模块的io
 monkey.patch_all()  # 必须放到被打补丁者的前面,如 time,socket 模块之前
import gevent
import time
 def gf(name):
    print(f'{name}:我想打王者!!')
    # gevent.sleep(2)
    time.sleep(2)
    print(f'{name}:我想吃大餐!!!')
 def bf(name):
    print(f'{name}:一起打!!!')
    # gevent.sleep(2)
    time.sleep(2)
    print(f'{name}:一快去吃!!')
if __name__ == "__main__":
    start = time.time()
    # 创建协程对象
    g1 = gevent.spawn(gf, '张三')
    g2 = gevent.spawn(bf, '李四')
    # 开启任务
    g1.join()
    g2.join()
    end = time.time()
    print(end - start)

运行结果:

 示例代码2:

import gevent
 def foo():
    print('Running in foo')
    gevent.sleep(2)
    print('Explicit context switch to foo again')
 
def bar():
    print('Explicit context to bar')
    gevent.sleep(2)
    print('Implicit context switch back to bar')
 gevent.joinall([
    gevent.spawn(foo),
    gevent.spawn(bar),
])

运行结果:

到此这篇关于python中gevent库的用法详情的文章就介绍到这了,更多相关python gevent库内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python爬取知乎图片代码实现解析

    Python爬取知乎图片代码实现解析

    这篇文章主要介绍了Python爬取知乎图片代码实现解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-09-09
  • 深入理解Python3中的http.client模块

    深入理解Python3中的http.client模块

    这篇文章主要介绍了关于Python3中http.client模块的相关资料,文中介绍的非常详细,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-03-03
  • Python实现两个list对应元素相减操作示例

    Python实现两个list对应元素相减操作示例

    这篇文章主要介绍了Python实现两个list对应元素相减操作,结合具体实例形式分析了list对应元素操作的简单实现技巧,需要的朋友可以参考下
    2017-06-06
  • Python实现控制台中的进度条功能代码

    Python实现控制台中的进度条功能代码

    下面小编就为大家分享一篇Python实现控制台中的进度条功能代码,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2017-12-12
  • numpy多级排序lexsort函数的使用

    numpy多级排序lexsort函数的使用

    本文主要介绍了numpy多级排序lexsort函数的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-03-03
  • 利用python3如何给数据添加高斯噪声

    利用python3如何给数据添加高斯噪声

    高斯噪声既是符合高斯正态分布的误差,一些情况下我们需要向标准数据中加入合适的高斯噪声会让数据变得有一定误差而具有实验价值,下面这篇文章主要给大家介绍了关于利用python3如何给数据添加高斯噪声的相关资料,需要的朋友可以参考下
    2022-03-03
  • 详解python关于多级包之间的引用问题

    详解python关于多级包之间的引用问题

    本文主要介绍了python关于多级包之间的引用问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-08-08
  • Python使用matplotlib绘制三维参数曲线操作示例

    Python使用matplotlib绘制三维参数曲线操作示例

    这篇文章主要介绍了Python使用matplotlib绘制三维参数曲线操作,结合实例形式分析了Python使用matplotlib的数值计算与图形绘制相关操作技巧,需要的朋友可以参考下
    2019-09-09
  • python抓取网页内容并进行语音播报的方法

    python抓取网页内容并进行语音播报的方法

    今天小编就为大家分享一篇python抓取网页内容并进行语音播报的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-12-12
  • Python中多线程的创建及基本调用方法

    Python中多线程的创建及基本调用方法

    由于注明的GIL的存在,Python尽管能创建多个线程,但是多线程却不能同时工作...well,这里我们来看一下Python中多线程的创建及基本调用方法
    2016-07-07

最新评论