NDB Future 類別

Future 代表非同步作業的結果。作業剛建立時或許沒有任何結果資料,但當作業完成時,Future 就會取得結果。應用程式可以呼叫 Future 物件的 get_result() 方法。如果有結果,這個方法會傳回結果。如果沒有結果,這個方法會等到結果產生,然後「再」傳回結果。

注意:RPC 和 Future 之間沒有 1 對 1 的對應關係。多個 Future 可能會連結至單一 RPC 的一筆結果。

例項方法

check_success()
檢查作業是否成功。會視需要等候。如果有問題,就會引發例外狀況;如果沒有任何問題,則會傳回 None
done()
如果有結果 (或例外狀況),就會傳回 True,否則會傳回 False。這個函式不會等候。
get_exception()
視需要等候,然後傳回例外狀況 (如果沒有例外狀況,則傳回 None)。會「傳回」例外狀況,而不會引發例外狀況。
get_result()
視需要等候,然後傳回結果或引發例外狀況。
get_traceback()
視需要等候,然後傳回例外狀況的回溯物件 (如果沒有回溯物件,則傳回 None)。Python 的 traceback 模組含有可列印及處理回溯物件的函式。
wait()
等到有結果或例外狀況為止。一律會傳回 None

類別方法

wait_all(futures)
等到傳送的可疊代項目中所有 Futures 都完成為止。

引數

futures
Future 物件的可疊代項目。

會傳回 None

wait_any(futures)
等到至少一個 Futures 可疊代項目完成為止。

引數

futures
Future 物件的可疊代項目。

會傳回一個完成的 Future (如果 futures 可疊代項目為空白,則傳回 None)。

本頁內容對您是否有任何幫助?請提供意見:

傳送您對下列選項的寶貴意見...

這個網頁
Python 2 適用的 App Engine 標準環境