fix: job mutext
This commit is contained in:
@@ -106,6 +106,8 @@ func (q *Job) AddPeriodicJob(job contracts.CronJobArg) error {
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
q.l.Lock()
|
||||
defer q.l.Unlock()
|
||||
|
||||
q.periodicJobs[job.Arg.Kind()] = client.PeriodicJobs().Add(river.NewPeriodicJob(
|
||||
job.PeriodicInterval,
|
||||
@@ -126,6 +128,9 @@ func (q *Job) Cancel(kind string) error {
|
||||
return err
|
||||
}
|
||||
|
||||
q.l.Lock()
|
||||
defer q.l.Unlock()
|
||||
|
||||
if h, ok := q.periodicJobs[kind]; ok {
|
||||
client.PeriodicJobs().Remove(h)
|
||||
delete(q.periodicJobs, kind)
|
||||
@@ -150,6 +155,9 @@ func (q *Job) Add(job contracts.JobArgs) error {
|
||||
return err
|
||||
}
|
||||
|
||||
q.l.Lock()
|
||||
defer q.l.Unlock()
|
||||
|
||||
q.jobs[job.Kind()], err = client.Insert(q.ctx, job, lo.ToPtr(job.InsertOpts()))
|
||||
return err
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user