繁体   English   中英

gevent:串联组成greenlets

[英]gevent: composing greenlets in series

在Twitter的Finagle ,可以使用mapflatMap链接多个异步操作。 例如,简单的网页抓取工具可能会执行以下操作,

downloadURL(url)                     // download a web page
  .flatMap(extractProducts)          // extract individual products for sale on it
  .foreach(saveToDatabase)           // save output to a database

我想在Python中使用gevent做一些非常相似的事情,但是我不确定该怎么做。 Greenlet.link似乎是一个开始,但是它不能让我访问包含最终结果的Greenlet (据我所知)。

如何使用gevent.Greenlet模仿FinaglemapflatMap操作?

gevent不是为“异步”编程( 在此上下文中为堆叠回调)而设计的,而是为并发编程而设计的。

gevent页面上的描述非常清楚:

gevent是一个基于协程的Python网络库,它使用greenlet在libevent事件循环的顶部提供高级同步API。

您正在寻找的东西是twisted (但是请注意,那不是最“初学者友好”的框架)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM