queue

package
v1.5.1 Latest Latest
Warning

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

Go to latest
Published: Jul 13, 2018 License: Apache-2.0 Imports: 15 Imported by: 7

Documentation

Index

Constants

View Source
const (
	StatusInit int32 = iota
	StatusClosed
)
View Source
const (
	FROM_NONE = iota
	FROM_DISK
	FROM_MEMORY
)

Variables

This section is empty.

Functions

func AtomicRename

func AtomicRename(sourceFile, targetFile string) error

Types

type BackendQueue

type BackendQueue interface {
	Name() string
	Put([]byte) error
	ReadChan() <-chan []byte // this is expected to be an *unbuffered* channel
	Close() error
	Delete() error
	Depth() int64
	Empty() error
}

BackendQueue represents the behavior for the secondary message storage system

func NewDirectQueue added in v1.3.1

func NewDirectQueue(name string) BackendQueue

func NewDiskQueue

func NewDiskQueue(name string, dataPath string, maxBytesPerFile int64,
	minMsgSize int32, maxMsgSize int32,
	syncEveryWrite, syncEveryRead int64, syncTimeout time.Duration, writeLimit int,
	enableMemory bool, maxMemoryLength int) BackendQueue

newDiskQueue instantiates a new instance of diskQueue, retrieving metadata from the filesystem and starting the read ahead goroutine

type DataQueue added in v1.5.0

type DataQueue interface {
	// PutDatas 用于存放一组数据
	PutDatas([]Data) error
	// ReadDatasChan 用于获取直接读取 Data 的管道
	ReadDatasChan() <-chan []Data
}

DataQueue 代表了无需编解码可直接放取 Data 的队列

Jump to

Keyboard shortcuts

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