ctl

package
v1.0.3 Latest Latest
Warning

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

Go to latest
Published: Sep 12, 2024 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

View Source
const (
	C_TIMER_TICK_INTERVAL = 1 * time.Minute // 定时器默认tick精度
)

Variables

This section is empty.

Functions

func AppName

func AppName() string

AppName

func AppVersion

func AppVersion() string

AppVersion

func Init

func Init(name, version string, conf ...*log.Config) interface{}

初始化

func Logger added in v1.0.3

func Logger(name string) log.ILoger

ctrl field logger

func Shut

func Shut(x interface{})

终止运行

func Wait

func Wait(x interface{})

等待结束

Types

type IControler

type IControler interface {

	// 控制器名称
	HandleName() string

	// 控制器准备
	HandleInit()

	// 控制器销毁
	HandleTerm()
}

> IControl接口

func Controler

func Controler(name string) IControler

获取控制器

func Install

func Install(ctrl IControler) IControler

======================================== [control] 安装控制器

type ITimer

type ITimer interface {
	// 初始化
	Init(tickerInterval ...time.Duration) *timer

	// 启动
	Start(restorer ...ITimerRestorer) *timer

	// 关闭
	Close()

	// 设置并恢复状态(需要在Handler添加之后调用)
	Restore(restorer ITimerRestorer)

	// 添加定时器[当fireFun返回false时自动删除此TimerHandler]
	TimerHandler(d time.Duration, fireFun TTimerHandFunc, opt ...*TimerOpt)

	// 添加每天一次的定时器[同上](after0:每天超过零点多少时间)
	DailyHandler(after0 time.Duration, fireFun TTimerHandFunc, opt ...*TimerOpt)

	// 移除定时器
	DelHandler(handle TTimerHandFunc)
	DelHandlerByName(name string)
}

定时器接口

func Timer

func Timer() ITimer

type ITimerRestorer

type ITimerRestorer interface {

	// 恢复状态
	Load() map[string]int64

	// 保存状态
	Save(key string, valAt int64)
}

状态存储接口

type TTimerHandFunc

type TTimerHandFunc func(now time.Time) (keep bool)

type TimerOpt

type TimerOpt struct {
	Name  string // 自定义名称(默认为函数名util.FuncFullNameRef)
	Right bool   // 是否立刻执行(daily类:当天时间满足的话则执行)
	Store bool   // 是否需要保存状态
}

==================== TimerOpt(可选参数)

Jump to

Keyboard shortcuts

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