import gevent,time       ##gevent  是 第三方库
from gevent import monkey
from urllib import request
monkey.patch_all()    ##  让程序变成IOdef  libs(url):print('Get %s '%url)requ = request.urlopen(url)re_requ = requ.read()urls = ['https://www.python.org/','https://www.yahoo.com/','https://github.com/' ]
time_star = time.time()
for i in urls:libs(i)
print('损耗的时间是 %s'%(time.time()-time_star))ootime =  time.time()
gevent.joinall([gevent.spawn(libs,'https://www.python.org/'),gevent.spawn(libs,'https://www.yahoo.com/'),gevent.spawn(libs,'https://github.com/'),])
print('异步所需的时间是 %s'%(time.time()-ootime))

结果

F:\python_oldboy\Scripts\p\Scripts\python.exe F:/python_oldboy/geve/爬虫练习.py
Get https://www.python.org/
Get https://www.yahoo.com/
Get https://github.com/
损耗的时间是 10.494600296020508
Get https://www.python.org/
Get https://www.yahoo.com/
Get https://github.com/
异步所需的时间是 3.925224542617798


import gevent
##安装第三方库  gevent, 可实现 同步或者异步编程
def foo():print('Running in foo')  #1gevent.sleep(2)print('context switch to foo again') #4def bar():print('running in bar')  #2gevent.sleep(1)print('context switch back bar') #3

gevent.joinall([gevent.spawn(foo),gevent.spawn(bar)
])

转载于:https://www.cnblogs.com/th-lyc/p/8848490.html

import gevent相关推荐

  1. python模拟高并发_Python基于gevent实现高并发代码实例

    gevent是python的协程模块,协程可以理解成更轻量化的线程.因为性能测试工具的一些限制,就自己萌发了自己写性能测试工具的念想,当然,写的比较简单,比如缺少性能指标的收集,慢慢的优化 出来,这个 ...

  2. 利用gevent实现异步执行任务

    import gevent def task(pid):gevent.sleep(2)print ("task %s done"%pid)def asynchronous():th ...

  3. Python之路-python(Queue队列、进程、Gevent协程、Select\Poll\Epoll异步IO与事件驱动)

    一.进程: 1.语法 2.进程间通讯 3.进程池 二.Gevent协程 三.Select\Poll\Epoll异步IO与事件驱动 一.进程: 1.语法 1 简单的启动线程语法 2 def run(na ...

  4. Gevent异步服务类实现多姿势WEB实时展示

    2019独角兽企业重金招聘Python工程师标准>>> 内置服务: 1. gevent.server.StreamServer类, 常用于创建异步TCP服务器 1 2 3 4 5 6 ...

  5. python使用gevent实现协程

    gevent是一个基于协程的python网络库,在遇到IO阻塞时,程序会自动进行切换,可以让我们用同步的方式写异步IO代码. # coding:utf8 import requests import ...

  6. gevent queue应用2 队列设置了最大数量限制

    1 # -*- coding:utf-8 -*- 2 #! /usr/bin/env python 3 ''' 4 Created on 2014年9月2日 5 ''' 6 import gevent ...

  7. gevent queue应用1

    1 # -*- coding:utf-8 -*- 2 #! /usr/bin/env python 3 ''' 4 Created on 2014年9月2日 5 ''' 6 import gevent ...

  8. python gevent

    基于协程的Python网络库gevent介绍 2017/01/04 · 工具与框架 · gevent 原文出处: 思诚之道 继续Python协程方面的介绍,这次要讲的是gevent,它是一个并发网络库 ...

  9. python gevent模块 下载_Python协程阻塞IO非阻塞IO同步IO异步IO

    Python-协程-阻塞IO-非阻塞IO-同步IO-异步IO 一.协程 协程又称为微线程 CPU 是无法识别协程的,只能识别是线程,协程是由开发人员自己控制的.协程可以在单线程下实现并发的效果(实际计 ...

最新文章

  1. android如何看百分比版本,【JAVA】Android百分比布局
  2. 怎样用计算机进入手机驱动程序,手机驱动怎么安装?
  3. 【Java Web开发指南】mybatis的Example[Criteria]的使用
  4. android studio修改配置文件夹(.android .gradle .AndroidStudio)位置
  5. .NET Core下使用gRpc公开服务(SSL/TLS)
  6. 大专学的pHp找什么工作,大专毕业能做什么工作 毕业都去干嘛了
  7. win10操做系统恢复操做
  8. 拆除指令怎么设置_张店区设置不合理隔离桩 将陆续拆除
  9. java swing 帮助文档,在Java Swing应用程序中创建在线帮助-使用pdf用户文档
  10. 自己动手开发编译器(四)利用DFA转换表建立扫描器
  11. Word插入插图清单目录、附表清单目录
  12. C语言编程题:简单的a+b
  13. 寻找肇事汽车车牌号C语言,北京交通大学C语言综合程序的设计(黄宇班).doc
  14. 华为路由器配置NAT
  15. 微纳自组装技术——纳米孔道阵列辅助自组装技术简述
  16. MySQL当前读和快照读
  17. 被称为偏执的企业家,他成功跻身中国民企500强
  18. 4.11 Lewis Carroll等式
  19. Stata: 面板 Granger 因果检验
  20. Python实战:淘宝自动抢购

热门文章

  1. 停车场管理系统linux实现,基于Linux的停车场管理系统的设计与实现
  2. pycharm shortcuts
  3. non-rigid shape registration using similarity-invariant differential coordinates
  4. Dirichlet energy and the Laplace equation
  5. 自定义双向线性插值滤子(卷积核)code
  6. 小学生计算机课件,小学三年级计算机教学课件
  7. ObjC学习3-类、继承、重载
  8. Linux配置http代理
  9. Java学习笔记(五)——数组
  10. Python进阶【第九篇】装饰器