本文簡要介紹python語言中 torch.futures.Future.add_done_callback
的用法。
用法:
add_done_callback(callback)
callback(
Future
) -一個接受一個參數的Callable
,is the reference to this Future.(哪一個) -
將給定的回調函數附加到此
Future
,該函數將在Future
完成時運行。可以將多個回調添加到同一個Future
中,但無法保證它們的執行順序。回調必須采用一個參數,即對此Future
的引用。回調函數可以使用value()
方法來獲取值。請注意,如果此Future
已完成,則給定的回調將內聯運行。我們建議您使用
then()
方法,因為它提供了一種在回調完成後進行同步的方法。如果您的回調不返回任何內容,add_done_callback
可能會更便宜。但then()
和add_done_callback
在底層都使用相同的回調注冊 API。對於 GPU 張量,此方法的行為方式與
then()
相同。注意
請注意,如果回調函數通過異常完成並調用
fut.wait()
或通過回調中的其他代碼拋出回調函數,則必須小心處理錯誤處理。例如,如果此回調稍後完成了其他期貨,則這些期貨不會標記為已完成並出現錯誤,並且用戶負責獨立處理這些期貨的完成/等待。>>> def callback(fut): ... print(f"This will run after the future has finished.") ... print(fut.wait()) >>> fut = torch.futures.Future() >>> fut.add_done_callback(callback) >>> fut.set_result(5) This will run after the future has finished. 5
例子:
參數:
相關用法
- Python PyTorch Future.then用法及代碼示例
- Python PyTorch Future.set_result用法及代碼示例
- Python PyTorch Future.set_exception用法及代碼示例
- Python PyTorch FunctionCtx.mark_dirty用法及代碼示例
- Python PyTorch Function用法及代碼示例
- Python PyTorch FunctionCtx.set_materialize_grads用法及代碼示例
- Python PyTorch FunctionCtx.save_for_backward用法及代碼示例
- Python PyTorch FunctionCtx.mark_non_differentiable用法及代碼示例
- Python PyTorch FloatFunctional用法及代碼示例
- Python PyTorch Forker用法及代碼示例
- Python PyTorch FMInteractionArch用法及代碼示例
- Python PyTorch FeatureAlphaDropout用法及代碼示例
- Python PyTorch FSSpecFileOpener用法及代碼示例
- Python PyTorch Filter用法及代碼示例
- Python PyTorch FSSpecSaver用法及代碼示例
- Python PyTorch FileLister用法及代碼示例
- Python PyTorch FisherSnedecor用法及代碼示例
- Python PyTorch FeaturePyramidNetwork用法及代碼示例
- Python PyTorch FactorizationMachine用法及代碼示例
- Python PyTorch FileStore用法及代碼示例
- Python PyTorch FractionalMaxPool3d用法及代碼示例
- Python PyTorch FiveCrop用法及代碼示例
- Python PyTorch FileOpener用法及代碼示例
- Python PyTorch FactorizationMachine.forward用法及代碼示例
- Python PyTorch FrequencyMasking用法及代碼示例
注:本文由純淨天空篩選整理自pytorch.org大神的英文原創作品 torch.futures.Future.add_done_callback。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。