package main import ( commonConfig "cicv-data-closedloop/pji/common/cfg" commonInit "cicv-data-closedloop/pji/common/init" commonService "cicv-data-closedloop/pji/common/svc" masterConfig "cicv-data-closedloop/pji/master/pkg/cfg" masterService "cicv-data-closedloop/pji/master/pkg/svc" "time" ) func init() { //runtime.GOMAXPROCS(1) commonInit.Init() masterConfig.InitTriggerConfig() commonConfig.InitKillSignalListener(commonConfig.CloudConfig.Hosts[0].Ip) // 等待重启,接收到重启信号,会把信号分发给以下channel go commonService.WaitKillSelf() } func main() { // 1 负责打包数据到data目录 go commonService.BagRecord(commonConfig.CloudConfig.Hosts[0].Name) time.Sleep(time.Duration(10) * time.Second) // 2 负责监控故障,并修改timeWindow go masterService.PrepareTimeWindowProducerQueue() // 3 将时间窗口内的包全部move出去,并等待当前时间窗口结束触发上传 go masterService.RunTimeWindowProducerQueue() // 4 排队运行时间窗口 go commonService.RunTimeWindowConsumerQueue(commonConfig.CloudConfig.Hosts[0].Name) // 阻塞主线程,等待其他线程执行。 select {} }