当前位置: 首页 > news >正文

企业网站的建立意义国土 住房与城乡建设部网站

企业网站的建立意义,国土 住房与城乡建设部网站,wordpress自动备份插件,网站org免费注册gevent 入门篇 并发编程模型主要有: 多进程,多线程,事件驱动, 协程. gevent 是基于协程的异步框架,它需要依赖于greenlet.gevent有什么样的优势? 先来通过一个简单的例子对比同步执行一个方法和使用gevent的异步方式. 普通的单线程同步执行任务 import timedef sync_task()…gevent 入门篇 并发编程模型主要有: 多进程,多线程,事件驱动, 协程. gevent 是基于协程的异步框架,它需要依赖于greenlet.gevent有什么样的优势? 先来通过一个简单的例子对比同步执行一个方法和使用gevent的异步方式. 普通的单线程同步执行任务 import timedef sync_task():#do somethingtime.sleep(1)def sync_run():start time.time()for i in range(10):sync_task()end time.time()print(sync task executed in %f second%(end-start))打印结果: async task executed in 10.012671 second 如果换成多线程会是什么情况呢? import threadingdef multi_thread_run():start time.time()for i in range(10):t threading.Thread(targetsync_task)t.start()end time.time()print(multi thread task executed in %f second%(end-start))打印结果是:multi thread task executed in 0.002425 second, 呵呵,这个时间简直亮瞎了, 其实这段程序有问题,子线程还没执行完时,主线程就结束了,因此时间才那么短,其实要稍稍修改: def multi_thread_run():start time.time()threads []for i in range(300):t threading.Thread(targetsync_task)threads.append(t)t.start()for t in threads:t.join()end time.time()print(multi thread task executed in %f second%(end-start))等所有子线程执行完之后再执行主线程,看看打印结果: multi thread task executed in 1.002796 second这是一个比较正常的结果. 换成gevent后会怎样呢? import gevent def async_task():#do somethinggevent.sleep(1)def async_run():start time.time()coroutins []for i in range(10):coroutins.append(gevent.spawn(async_task))gevent.joinall(coroutins)end time.time()print(async task executed in %f second%(end-start))打印输出:async task executed in 1.002012 second gevent.spawn()方法会创建一个协程实例,gevent.joinall()是使所有的线程执行完了之后在运行主线程,这跟多线程编程是同样的概念. 发现gevent比多线程也没快多少,那gevent究竟有什么优势.现在假设把上面的10替换成1000,也就是1000线程与1000个coroutine之间的比较,会出现什么结果呢?如果是用线程的话直接报错了:thread.error: cant start new thread.而用协程就不会出现这种问题. coroutine相比thread的优势在于: 创建threade的成本高,而创建coroutine的成本很低thread的上下文切换成本高,而coroutin的切换速度很快thread的上下文切换取决于cpu,而coroutine由自己控制 先介绍到这里,下次接着聊 参考淺談coroutine與gevent
http://www.zqtcl.cn/news/111370/

相关文章:

  • 上门做美容的有什么网站微信网页版本
  • 专门做餐饮运营的网站网站开发相关知识
  • 石家庄门户网站建设免费简历模板的网站
  • 微网站建设市场如何做好平台推广
  • 网站不备案做优化小程序开发前景怎么样
  • 美丽说网站优化百度关键词优化
  • 同性男做的视频网站赶集网招聘最新招聘附近找工作
  • 做挖机配件销售的网站oa办公系统软件哪家好
  • 聊城设计网站商务网站的特点
  • 厦门做个网站多少钱工程建设范围
  • 百度推广官方网站在哪里制作网页
  • 济南集团网站建设方案沈阳手机网站制作
  • 网站备案号注销的结果做网站的外包能学到什么
  • 在线购物网站开发项目网站建设电话推广话术
  • 网站主体信息太原站扩建
  • 西平县住房和城乡建设局网站空间商网站
  • p2p网站建设cms一键生成图片
  • 甘肃省第八建设集团公司网站能够做物理题的网站
  • 团购网站建设方案建筑工程网校官网
  • 佛山建站网站模板小公司管理方法
  • 常德住房和城乡建设局网站做风险代理案源的网站
  • 手机网站开发人员选项wordpress加载媒体库
  • 做钓鱼网站用哪种编程语言张家界有实力seo优化费用
  • 如何做一个主题网站做网站必须有框架么
  • 建设网站需要什么知识上海高端网页设计
  • 电子商务网站建设基本流程公司网站建设平台
  • 域名没过期 网站打不开怎么办素马设计顾问讲解价格
  • 怎么做非法彩票网站贵州网站开发哪家便宜
  • 青岛市医疗保险网站wordpress七牛云
  • 哪个浏览器可以做网站查询网站的外链