Versions in this module Expand all Collapse all v0 v0.4.6 Jun 16, 2022 Changes in this version + type Monitor struct + TaskLock sync.Mutex + Tasks map[string]*Task + func NewTaskMonitor() *Monitor + func (tm *Monitor) Fail(name, err string) + func (tm *Monitor) Finish(name string) + func (tm *Monitor) Get(name string) int + func (tm *Monitor) List(workers ...string) []Task + func (tm *Monitor) NewTaskTracker(name string) *Tracker + func (tm *Monitor) Pending(name string) + func (tm *Monitor) Start(name string, total int) + func (tm *Monitor) Suspend(name string, flag bool) + func (tm *Monitor) Update(name string, done int) + type Runner struct + Name string + func (locker *Runner) Lock() + func (locker *Runner) UnLock() + type Scheduler struct + Privileged *strset.Set + Running bool + func NewTaskScheduler() *Scheduler + func (t *Scheduler) Lock(name string) + func (t *Scheduler) NewRunner(name string) *Runner + func (t *Scheduler) PreLock(name string) + func (t *Scheduler) UnLock(name string) + type Status string + const StatusComplete + const StatusFailed + const StatusPending + const StatusRunning + const StatusSuspended + type SubTaskTracker struct + Offset int + Total int + func (tt *SubTaskTracker) Fail(err string) + func (tt *SubTaskTracker) Finish() + func (tt *SubTaskTracker) Start(total int) + func (tt *SubTaskTracker) SubTracker() model.Tracker + func (tt *SubTaskTracker) Suspend(flag bool) + func (tt *SubTaskTracker) Update(done int) + type Task struct + Done int + Error string + FinishTime time.Time + Name string + StartTime time.Time + Status Status + Total int + func NewTask(name string, total int) *Task + func NewTaskFromPB(in *protocol.PushTaskInfoRequest) *Task + func (t *Task) Finish() + func (t *Task) ToPB() *protocol.PushTaskInfoRequest + func (t *Task) Update(done int) + type Tasks []Task + func (t Tasks) Len() int + func (t Tasks) Less(i, j int) bool + func (t Tasks) Swap(i, j int) + type Tracker struct + func (tt *Tracker) Fail(err string) + func (tt *Tracker) Finish() + func (tt *Tracker) Start(total int) + func (tt *Tracker) SubTracker() model.Tracker + func (tt *Tracker) Suspend(flag bool) + func (tt *Tracker) Update(done int)