示例#1
0
// 心跳机制
func heartBeat(ch chan int, clientObj *client.Client) {
	// 处理内部未处理的异常,以免导致主线程退出,从而导致系统崩溃
	defer func() {
		if r := recover(); r != nil {
			logUtil.Log(fmt.Sprintf("通过recover捕捉到的未处理异常:%v", r), logUtil.Error, true)
		}

		ch <- 1
	}()

	for {
		clientObj.SendHeartBeatMessage()

		// 休眠指定的时间(单位:秒)
		time.Sleep(HeartBeatInterval * time.Second)
	}
}