schd

package
v0.0.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 7, 2023 License: MIT Imports: 7 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type FifoQueue

type FifoQueue struct {
	// contains filtered or unexported fields
}

func NewFifoQueue

func NewFifoQueue() *FifoQueue

func (*FifoQueue) Close

func (q *FifoQueue) Close()

closing is NOT required in Golang It just used to tell the receiver everything are sent

func (*FifoQueue) Enqueue

func (q *FifoQueue) Enqueue(f func())

func (*FifoQueue) Flush

func (q *FifoQueue) Flush()

flush will wait

type MultiTaskTicker

type MultiTaskTicker struct {
	// contains filtered or unexported fields
}

func NewMultiTaskTicker

func NewMultiTaskTicker() *MultiTaskTicker

func (*MultiTaskTicker) AddTask

func (mtt *MultiTaskTicker) AddTask(params ...interface{}) *MultiTaskTicker

func (*MultiTaskTicker) GetNumWorkers

func (mtt *MultiTaskTicker) GetNumWorkers() int

func (*MultiTaskTicker) IsStarted

func (mtt *MultiTaskTicker) IsStarted() bool

func (*MultiTaskTicker) SetNumWorkers

func (mtt *MultiTaskTicker) SetNumWorkers(nWorkers int) *MultiTaskTicker

func (*MultiTaskTicker) SetPeriod

func (mtt *MultiTaskTicker) SetPeriod(period time.Duration) *MultiTaskTicker

func (*MultiTaskTicker) SetTasks

func (mtt *MultiTaskTicker) SetTasks(params ...interface{}) *MultiTaskTicker

func (*MultiTaskTicker) Start

func (mtt *MultiTaskTicker) Start(ctx context.Context, f MultiTaskTickerFunc) (err error)

func (*MultiTaskTicker) Stop

func (mtt *MultiTaskTicker) Stop(ctx context.Context) (err error)

func (*MultiTaskTicker) StopWait

func (mtt *MultiTaskTicker) StopWait()

type MultiTaskTickerFunc

type MultiTaskTickerFunc func(ctx context.Context, param interface{})

type TaskQueue

type TaskQueue struct {
	// contains filtered or unexported fields
}

*

  • Task Queue: it is used to help us schedule a
  • sequence of executions *
  • The default num workers is 1
  • If this number is 1, it could also treated as a
  • strict FIFO Queue *

func NewTaskQueue

func NewTaskQueue() *TaskQueue

func (*TaskQueue) Close

func (q *TaskQueue) Close()

It's OK to leave a Go channel open forever and never close it. When the channel is no longer used, it will be garbage collected. -- <https://stackoverflow.com/questions/8593645> However we could provide a close + wait interface, which is used to indicate its finishing

func (*TaskQueue) Enqueue

func (q *TaskQueue) Enqueue(f func())

add a new task

func (*TaskQueue) Flush

func (q *TaskQueue) Flush()

func (*TaskQueue) GetNumWorkers

func (q *TaskQueue) GetNumWorkers() int

func (*TaskQueue) Perform

func (q *TaskQueue) Perform()

func (*TaskQueue) SetNumWorkers

func (q *TaskQueue) SetNumWorkers(numWorkers int) int

func (*TaskQueue) State

func (q *TaskQueue) State() int64

return current work loader

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL