|
@@ -131,8 +131,8 @@ func (t *timeTask) Month() (int64, int64) {
|
|
|
return startDate.Unix(), endDate.Unix()
|
|
|
}
|
|
|
|
|
|
-//执行每小时任务
|
|
|
-func (t *timeTask) RunEveryHour(duration int64, runRightNow bool, f func()) {
|
|
|
+//每小时整点执行任务
|
|
|
+func (t *timeTask) RunEveryHour(runRightNow bool, f func()) {
|
|
|
if runRightNow {
|
|
|
go f()
|
|
|
}
|
|
@@ -147,18 +147,3 @@ func (t *timeTask) RunEveryHour(duration int64, runRightNow bool, f func()) {
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
-//执行每小时任务,每个小时中再跑n次任务
|
|
|
-func (t *timeTask) RunSpitHour(duration int64, runRightNow bool, f func()) {
|
|
|
- now := time.Now()
|
|
|
- go VarTimeTask.RunInTimeLoop("执行每小时任务", HourFormat(now.Hour()), HourFormat(now.Hour()+1), duration, runRightNow, 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, f)
|
|
|
- ticker.Reset(time.Hour)
|
|
|
- }
|
|
|
- }
|
|
|
-}
|