fix: 修复 timer.Ticker 的 CronByInstantly 函数导致的死锁问题
This commit is contained in:
parent
5714a437cc
commit
8a8610f756
|
@ -81,6 +81,7 @@ func (slf *Ticker) Cron(name, expression string, handleFunc interface{}, args ..
|
||||||
|
|
||||||
// CronByInstantly 与 Cron 相同,但是会立即执行一次
|
// CronByInstantly 与 Cron 相同,但是会立即执行一次
|
||||||
func (slf *Ticker) CronByInstantly(name, expression string, handleFunc interface{}, args ...interface{}) {
|
func (slf *Ticker) CronByInstantly(name, expression string, handleFunc interface{}, args ...interface{}) {
|
||||||
|
func(name, expression string, handleFunc interface{}, args ...interface{}) {
|
||||||
var values = make([]reflect.Value, len(args))
|
var values = make([]reflect.Value, len(args))
|
||||||
for i, v := range args {
|
for i, v := range args {
|
||||||
values[i] = reflect.ValueOf(v)
|
values[i] = reflect.ValueOf(v)
|
||||||
|
@ -95,6 +96,8 @@ func (slf *Ticker) CronByInstantly(name, expression string, handleFunc interface
|
||||||
} else {
|
} else {
|
||||||
f.Call(values)
|
f.Call(values)
|
||||||
}
|
}
|
||||||
|
}(name, expression, handleFunc, args...)
|
||||||
|
|
||||||
slf.Cron(name, expression, handleFunc, args...)
|
slf.Cron(name, expression, handleFunc, args...)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue