package main import ( "github.com/robfig/cron" "log" "net" "os" ) var err error func main() { go gw_router() go serial_run() c := cron.New() // send_data(CODE1001) //获取数据防抖处理时间配置 go getConf() // c.AddFunc("0, *, *, *, *, *", func() { // send_data(CODE1001) // }) //一分钟一次 同步数据 c.AddFunc("0, *, *, *, *, *", func() { yunhorn_hb_dpark_v1() }) c.AddFunc("*/10, *, *, *, *, *", func() { // devices := []Device{} // log.Println(string(build_data(1001,devices))) }) c.AddFunc("*/30, *, *, *, *, *", func() { getConf() }) c.AddFunc("0, */10, *, *, *, *", savedata_cron) c.AddFunc("0, 0, 0, *, *, *", insertdata) c.AddFunc("0, 0, *, *, *, *", get_weather) c.Start() listener, err := net.Listen("tcp", "0.0.0.0:10090") if err != nil { log.Printf("listen fail, err: %v\n", err) return } if conf.OPENTCPSETVER { for { conn, err := listener.Accept() if err != nil { log.Printf("accept fail, err: %v\n", err) continue } // go process(conn) go handleConn(conn) } } else { //如果不启动tcpserver,则需要执行这里 让程序不退出 select {} } } func check(err error) { if err != nil { log.Println(err) os.Exit(1) } }