大部分程序會有一些須要週期執行的事情,也有一些須要在程序啓動後執行一次的事情。很明顯這類事情和時間有關,由於它們都須要在特定時間發生。這類須要執行的邏輯能夠由時間事件發生器觸發。git
時間事件發生器是掛載在虛擬根VirtualRoot上的一個組件,它負責在特定的時間將特定類型的事件發佈到系統總線上去。時間事件發生器會發布的事件有:github
代碼位置多線程
HasBoot1SecondEvent
HasBoot2SecondEvent
HasBoot5SecondEvent
HasBoot10SecondEvent
HasBoot20SecondEvent
HasBoot1MinuteEvent
HasBoot2MinuteEvent
HasBoot5MinuteEvent
HasBoot10MinuteEvent
HasBoot20MinuteEvent
HasBoot50MinuteEvent
HasBoot100MinuteEvent
HasBoot24HourEvent
Per1SecondEvent
Per2SecondEvent
Per5SecondEvent
Per10SecondEvent
Per20SecondEvent
Per1MinuteEvent
Per2MinuteEvent
Per5MinuteEvent
Per10MinuteEvent
Per20MinuteEvent
Per50MinuteEvent
Per100MinuteEvent
Per24HourEvent
以上26種時間事件的設計靈感來源於人民幣幣值的設計,具體爲何是這些數值咱們不作深究,實踐證實這些數值正是開源礦工所須要的。spa
線程
發佈到系統總線上去。每個系統都應該有本身內部的系統總線,時間事件消息正是發佈到系統本身內部的總線上去的。系統內部的各組件根據本身的需求從總線上訂閱事件修建事件消息所行走的路徑。設計
事件