2016-11-11 215 views
0

我有一個帶噴口和螺栓的風暴拓撲(numTasks = 16)。我只想在螺栓的一個任務中執行一段特定的代碼(只有一次)。 我怎樣才能做到這一點?在風暴螺栓中:如何在一個螺栓任務中執行一行代碼

我想到在螺栓的準備方法中這樣做,但我不知道將事先分配給螺栓的任務ID。

是否有可能做一個選舉和存儲在它的動物園管理員和稍後在螺栓的準備方法檢索選舉領導人,並與當前任務ID匹配。如果任務ID匹配選舉首席執行該螺栓任務實例中特定的一段代碼?如果這是一個合適的方法,我該如何解決?

+0

還是有可能得到螺栓的準備方法中的所有螺栓taskIds的列表? – Priyanka

回答

0

您可以通過TopologyContext作爲#prepare()的參數提供所有元信息來訪問整個拓撲DAG。在那裏你可以得到所有的任務ID,包括你自己的任務ID。因此,一個簡單的方法是隻運行你的特殊代碼,如果你的任務有min(或max)task-id分配的話。

+0

謝謝,這有幫助! – Priyanka