|
@@ -134,17 +134,13 @@ func (t *timeTask) Month() (int64, int64) {
|
|
|
//执行每小时任务
|
|
|
func (t *timeTask) RunEveryHour(duration int64, f func()) {
|
|
|
now := time.Now()
|
|
|
- go VarTimeTask.RunInTimeLoop("执行每小时任务", HourFormat(now.Hour()), HourFormat(now.Hour()+1), duration, true, false, nil, func() {
|
|
|
- f()
|
|
|
- })
|
|
|
+ go VarTimeTask.RunInTimeLoop("执行每小时任务", HourFormat(now.Hour()), HourFormat(now.Hour()+1), duration, true, false, nil, f)
|
|
|
nextHour := time.Date(now.Year(), now.Month(), now.Day(), now.Hour()+1, 0, 0, 0, time.Local)
|
|
|
ticker := time.NewTicker(nextHour.Sub(now))
|
|
|
for {
|
|
|
select {
|
|
|
case <-ticker.C:
|
|
|
- go VarTimeTask.RunInTimeLoop("执行每小时任务", HourFormat(time.Now().Hour()), HourFormat(time.Now().Hour()+1), duration, true, false, nil, func() {
|
|
|
- f()
|
|
|
- })
|
|
|
+ go VarTimeTask.RunInTimeLoop("执行每小时任务", HourFormat(time.Now().Hour()), HourFormat(time.Now().Hour()+1), duration, true, false, nil, f)
|
|
|
ticker.Reset(time.Hour)
|
|
|
}
|
|
|
}
|