greenlets

    2熱度

    1回答

    我有更多的代碼比這個,所以我正在修剪它似乎是相關的。每所記錄的例子,我有ZeroRPC使用Python類: import zerorpc, sys, signal class MyClass: pass zpc = 0 if __name == '__main__': zpc = zerorpc.Server(MyClass) zpc.bind('ipc:/

    1熱度

    1回答

    我的安裝程序有一個生成的Node.js子代,它創建了一個Python對象的2路ZeroRPC會話對。 Python端與此類似: class MyClass: def __init__(self, socketpath): self.client = zerorpc.Client() self.client.connect(socketpath) def

    0熱度

    1回答

    我試圖從遠程API中並行檢索數據。遠程API沒有任何批量功能,因此對於我需要的每個對象,我必須提出一個單獨的GET請求。 我已將gevent添加到組合中。有時候的偉大工程,但如果我再次嘗試同一組的請求,100 50將與此失敗: Traceback (most recent call last): ... File "/Users/---/venv/lib/python2.7/s

    3熱度

    1回答

    我在學習Gevent,但無法獲得由greenlet中調用的函數返回的值。下面的代碼: import gevent.monkey gevent.monkey.patch_socket() import gevent from gevent import Greenlet import urllib2 import simplejson as json def fetch(pid):

    2熱度

    2回答

    我使用gevent下載一些html頁面。 有些網站速度太慢,一段時間後有些網站停止提供服務。這就是爲什麼我必須限制我提出的一組請求的總時間。爲此我使用gevent「超時」。 timeout = Timeout(10) timeout.start() def downloadSite(): # code to download site's url one by one u

    1熱度

    2回答

    我想用greenlet扭曲,所以我可以在不使用inlineCallbacks的情況下編寫同步代碼。 這是我的代碼: import time, functools from twisted.internet import reactor, threads from twisted.internet.defer import Deferred from functools import wrap

    1熱度

    1回答

    我試圖捕獲greenlet中引發的異常。根據this tutorial,不幸的是'在Greenlet提出的例外,留在Greenlet'。在下面的代碼中,我有一個生成爬網小程序的同步方法。那些抓取greenlet引發了HTTPError異常,我需要在同步方法的主體中捕獲這個異常。根據例外情況,在同步方法中,我將設置Account對象的適當狀態。任何想法如何捕獲同步方法中的greenlet中引發的異常

    0熱度

    1回答

    我真的很佩服無堆棧的Python的功能,我一直在四處尋找一種方式,同時還使用標準的Python 3解釋效仿它的語法。 An article by Alex J. Champandard in a gamedev blog使它看起來好像greenlet庫可以提供這種功能。我稍微修改了代碼,但最好的臨時任務蕾包裝我能想出是一類抱着一個變量裏面greenlet,因爲這樣的: class tasklet(

    0熱度

    1回答

    會是有意義的使用greenlet.greenlet作爲裝飾,常規的函數轉換成greenlet如下: from greenlet import greenlet @greenlet def f(args): # ... z = g.switch(u) # ... @greenlet def g(args): # ... def main(arg

    -1熱度

    1回答

    我在基於gevent的框架中使用了帶有pymongo驅動程序的mongodb。我不明白工作池連接。我正在爲每個請求創建一個新的連接實例: connection = MongoClient(host='localhost', port=27017, use_greenlets=True) 實際上,連接是從一個池? 現在,如果我走了連接,以便: connection = MongoClient(h