task

package
v0.0.74 Latest Latest
Warning

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

Go to latest
Published: Nov 6, 2021 License: MIT Imports: 0 Imported by: 5

Documentation

Index

Constants

View Source
const (
	StateStarting   = 1
	StateStarted    = 2
	StateRunning    = 3
	StatePaused     = 4
	StateCancelling = 5
	StateStopping   = 6
	StateStopped    = 7
)

定义任务过程中的状态

View Source
const (
	StatusOK        = 200
	StatusCancelled = 300
	StatusFail      = 500
)

定义任务的最终状态

Variables

This section is empty.

Functions

This section is empty.

Types

type CatchFn

type CatchFn func(err error)

CatchFn 是 Catch 方法的回调函数

type Controller added in v0.0.70

type Controller interface {
	Pause() error
	Resume() error
	Cancel() error
	GetState() State
	GetStatus() Status
	GetError() error
	GetProgress() map[string]*Progress
}

Controller 任务控制器(用户端接口)

type Executor

type Executor interface {
	Execute(r Runnable)
}

Executor 接口表示一个任务的执行者

func DefaultExecutor

func DefaultExecutor() Executor

DefaultExecutor 创建一个默认的任务的执行者

type FinallyFn

type FinallyFn func()

FinallyFn 是操作完成(成功|失败)的处理函数

type Progress added in v0.0.70

type Progress struct {
	TaskID    string // 任务ID
	Name      string // 项目名称(ID)
	Title     string // 标题
	Unit      string // 单位
	Value     int64  // 当前值
	ValueMin  int64  // 最小值
	ValueMax  int64  // 最大值
	TimeBegin int64  // 开始时间
	TimeEnd   int64  // 结束时间
	Done      bool   // 是否已完成
	Cancelled bool   // 是否已取消
}

Progress 进度对象

type ProgressControlHandlerFn added in v0.0.70

type ProgressControlHandlerFn func(reporter ProgressReporter) error

ProgressControlHandlerFn 进度控制处理函数

type ProgressReporter added in v0.0.70

type ProgressReporter interface {
	Report(p *Progress)
	UpdateStatus(s Status)
	UpdateState(s State)

	HandleCancel(f ProgressControlHandlerFn)
	HandlePause(f ProgressControlHandlerFn)
	HandleResume(f ProgressControlHandlerFn)
}

ProgressReporter 进度报告者(服务端接口)

type Promise

type Promise interface {
	Then(fn ThenFn) Promise
	Catch(fn CatchFn) Promise
	Finally(fn FinallyFn) Promise
}

Promise 对象用于表示一个异步操作的最终完成 (或失败)及其结果值。

func NewPromise

func NewPromise(fn PromiseFn) Promise

NewPromise 新建一个 Promise 对象的实例

func NewPromiseWithExecutor

func NewPromiseWithExecutor(executor Executor, fn PromiseFn) Promise

NewPromiseWithExecutor 新建一个 Promise 对象的实例, 并使用指定的 Executor 执行

type PromiseFn

type PromiseFn func(resolve ResolveFn, reject RejectFn)

PromiseFn 是任务的执行过程

type RejectFn

type RejectFn func(err error)

RejectFn 是操作失败的处理函数

type ResolveFn

type ResolveFn func(result interface{})

ResolveFn 操作成功的处理函数

type Runnable

type Runnable interface {
	// Run 在当前协程上执行任务
	Run()
}

Runnable 一个简单而纯粹的任务入口

type State added in v0.0.70

type State int

State 表示任务执行过程中的某个状态

type Status added in v0.0.70

type Status uint

Status 表示任务的最终状态

type ThenFn

type ThenFn func(result interface{})

ThenFn 是 Then 方法的回调函数

Jump to

Keyboard shortcuts

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