如何使用Core.schedule()裝飾器來安排任務在代理內的特定時間啓動?我嘗試使用Core.schedule(截止日期,*參數,** kwargs),其中截止日期是日期和時間(即'2016-09-26 10:00:00'),但收到錯誤參數未定義。VOLTTRON中的Core.schedule裝飾器
0
A
回答
0
通常情況下,調度方法不會用作裝飾器,因爲計劃的回調只調用一次。 (我從來沒有真正做過。)
* args和** kwargs是傳遞給函數的變量參數的佔位符。請參閱http://www.saltycrane.com/blog/2008/01/how-to-use-args-and-kwargs-in-python/
在這種情況下,schedule方法使用* args和** kwargs來存儲傳入裝飾器的任何額外參數,然後將其傳遞到調用函數中。
例如,如果我有一個代理方法update_state(self,parameter1),並且我想安排在將來的某個時間運行,並由參數1的值爲42請執行以下操作:
self.core.schedule(update_time, self.update_state, 42)
update_time需要是python datetime對象或unix時間戳。
要使用它作爲裝飾,你會做這樣的事情:
Core.schedule(update_time, 42)
def update_state(self, parameter1):
pass
當UPDATE_TIME到達它會被稱爲一次。如果你想安排另一次調用update_state函數,你需要計算出新的時間,並從update_state函數中調度它。
相關問題
- 1. 裝飾裝飾器
- 2. 在Python中裝飾裝飾器
- 3. 如何在裝飾器中重用TypeScript中的裝飾器
- 4. Python中的裝飾器必須實現裝飾器模式嗎?
- 5. python中的裝飾器
- 6. 類中的裝飾器
- 7. ES7中的類裝飾器
- 8. Python裝飾器
- 9. 與裝飾器
- 10. 裝飾模式裝飾器限制
- 11. 在春天自動裝飾裝飾器
- 12. Django:在其他裝飾器中重新使用login_required裝飾器
- 13. 使用volttron-CFG配置volttron中心(VC)
- 14. 裝飾django發佈保存在裝飾器中的模型類
- 15. Angular中的單元測試裝飾器,裝飾$ log服務
- 16. 裝飾器是不同於裝飾器的功能類嗎?
- 17. 芹菜@task裝飾器後的裝飾器
- 18. Sitemesh 2.4.2:如何使用除裝飾器之外的裝飾器
- 19. 使用裝飾器,(rails)無法推斷ActiveRecord :: Base的裝飾器
- 20. Python中的生成器裝飾器
- 21. 裝飾渲染器
- 22. 切換裝飾器
- 23. Django @login_required裝飾器
- 24. 創建裝飾器
- 25. Python memoization裝飾器
- 26. 訪問在裝飾器之外的裝飾器中創建的函數屬性
- 27. Django的login_optional裝飾器?
- 28. ItemsControl內的裝飾器
- 29. 嵌套的python裝飾器?
- 30. NumbaPro(Python)裝飾器的NotImplementedError