bufferqueue

package
v0.1.7 Latest Latest
Warning

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

Go to latest
Published: Jan 26, 2024 License: GPL-3.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BufferQueue

type BufferQueue struct {
	ServerID string

	Cap     int           // 队列长度
	MaxTime time.Duration // 最大执行间隔
	Ctx     context.Context

	FlushBufferFunc func(messageList []interface{}) // 清空缓存的回调
	Errors          map[string]error

	Logger Logger // 日志
	// contains filtered or unexported fields
}

func NewBufferQueue

func NewBufferQueue() *BufferQueue

NewBufferQueue 这里做简单的初始化, 添加默认值, 在 Start 执行之前都能改

func (*BufferQueue) AddJob

func (bf *BufferQueue) AddJob(msg interface{}) error

func (*BufferQueue) DebugMode added in v0.0.10

func (bf *BufferQueue) DebugMode()

func (*BufferQueue) FlushBuffer

func (bf *BufferQueue) FlushBuffer(messageList []interface{}, workID int) bool

FlushBuffer 清空切片缓存, 如果外部传入了清空逻辑, 则优先执行那个

func (*BufferQueue) Log added in v0.0.10

func (bf *BufferQueue) Log(format string, v ...interface{})

func (*BufferQueue) Start

func (bf *BufferQueue) Start(pCtx context.Context)

func (*BufferQueue) Stop

func (bf *BufferQueue) Stop()

type Logger added in v0.0.10

type Logger interface {
	Trace(format string, v ...interface{})
}

Jump to

Keyboard shortcuts

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