當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python distributed.diagnostics.plugin.SchedulerPlugin用法及代碼示例


用法:

class distributed.diagnostics.plugin.SchedulerPlugin

擴展調度器的接口

調度程序通過觸發和響應 task_finished , update_graph , task_erred 等事件來運行。

插件使自定義代碼能夠在每個相同的事件中運行。當每個事件被觸發時,調度程序將在這個類上運行類似的方法。這在調度程序線程中運行用戶代碼,可以與調度程序本身同步執行任意操作。

插件通常用於診斷和測量,但可以完全訪問調度程序,並且原則上可能會影響核心調度。

要實現插件,請實現此類的一些方法,並使用 Scheduler.add_plugin(myplugin) 將插件添加到調度程序。

例子

>>> class Counter(SchedulerPlugin):
...     def __init__(self):
...         self.counter = 0
...
...     def transition(self, key, start, finish, *args, **kwargs):
...         if start == 'processing' and finish == 'memory':
...             self.counter += 1
...
...     def restart(self, scheduler):
...         self.counter = 0
>>> plugin = Counter()
>>> scheduler.add_plugin(plugin)

相關用法


注:本文由純淨天空篩選整理自dask.org大神的英文原創作品 distributed.diagnostics.plugin.SchedulerPlugin。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。