|
|
@@ -19,6 +19,7 @@ var (
|
|
|
isOnline atomic.Bool // 标记是否联网
|
|
|
offlineStartTs atomic.Int64 // 离线开始时间
|
|
|
isSyncNTPTimeOK atomic.Bool // 标记本地时间是否已同步成功
|
|
|
+ lastSyncNTPTime time.Time // 记录同步网络时间成功的时间
|
|
|
curNetType NetType // 当前的网络类型: 有线、蜂窝
|
|
|
mu1 sync.Mutex
|
|
|
isRunning1 bool
|
|
|
@@ -85,14 +86,19 @@ func serviceRun() {
|
|
|
offlineStartTs.Store(0)
|
|
|
|
|
|
if isSyncNTPTimeOK.Load() {
|
|
|
- t.Reset(interval2)
|
|
|
- continue
|
|
|
+ if time.Since(lastSyncNTPTime) >= (time.Duration(60) * time.Minute) { // 1小时后需要再次同步NTP时间
|
|
|
+ isSyncNTPTimeOK.Store(false)
|
|
|
+ } else {
|
|
|
+ t.Reset(interval2)
|
|
|
+ continue
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
err := SyncNTPTime()
|
|
|
if err == nil {
|
|
|
isSyncNTPTimeOK.Store(true)
|
|
|
baseapp.Logger.Infof("[%s] NTP时间已同步", MODULE_NAME)
|
|
|
+ lastSyncNTPTime = time.Now()
|
|
|
t.Reset(interval2)
|
|
|
continue
|
|
|
} else {
|