timewheel

package
v0.0.0-...-93b0e25 Latest Latest
Warning

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

Go to latest
Published: Feb 2, 2023 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AddMoreTimesTask

func AddMoreTimesTask(interval, times int64, immediately bool, taskName string, taskHandel Execute, args ...interface{}) error

*

  • @description: 定时执行n次任务
  • @param {int64} interval-->间隔时间
  • @param {int64} times-->执行次数
  • @param {bool} immediately-->是否立即执行一次
  • @param {string} taskName-->任务名称,时轮中已经存在改任务,则丢弃此次任务
  • @param {Execute} taskHandel-->任务执行函数体
  • @param {...interface{}} args-->任务执行函数入参
  • @return {*}

func AddOnceTask

func AddOnceTask(interval int64, taskName string, taskHandel Execute, args ...interface{}) error

*

  • @description: 延后执行一次任务
  • @param {int64} interval-->延后时间,单位s
  • @param {string} taskName-->任务名称,时轮中已经存在改任务,则丢弃此次任务
  • @param {Execute} taskHandel-->任务执行函数体
  • @param {...interface{}} args-->任务执行函数入参
  • @return {*}

func AddRepeatTask

func AddRepeatTask(interval int64, immediately bool, taskName string, taskHandel Execute, args ...interface{}) error

*

  • @description: 定时执行无限次任务
  • @param {int64} interval-->间隔时间
  • @param {bool} immediately-->是否立即执行一次
  • @param {string} taskName-->任务名称,时轮中已经存在改任务,则丢弃此次任务
  • @param {Execute} taskHandel-->任务执行函数体
  • @param {...interface{}} args-->任务执行函数入参
  • @return {*}

func NewTimeWheel

func NewTimeWheel(interval time.Duration, numSlots int) *timeWheel

*

  • @description: 创建时轮
  • @param {time.Duration} interval-->时轮推荐间隔,一般使用各类业务所需最细粒度时间
  • @param {int} numSlots -->时轮插槽数,一个时轮总时长interval*numSlots
  • @return {*timeWheel} 时轮对象

func RemoveTask

func RemoveTask(taskName string)

*

  • @description: 中途停止任务
  • @param {string} taskName-->任务名称

Types

type Execute

type Execute func(prm ...interface{}) bool

*

  • @description: 任务执行函数体
  • @param {...interface{}} prm-->任务执行函数,参数列表
  • @return {bool}重复任务,是否启动下一次任务,true:启动下一次任务,false:不启动,用于业务执行时,临时改变执行计划

Jump to

Keyboard shortcuts

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