diskqueue

package module
v0.0.0-...-167aa3e Latest Latest
Warning

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

Go to latest
Published: Dec 20, 2018 License: Apache-2.0 Imports: 16 Imported by: 0

README

diskqueue

Documentation

Index

Constants

View Source
const (
	TIMETOFLUSH = 1e9
	MAXSIZE     = 100000000

	HEADERSZ = 22
	DELRECSZ = 43
)

Variables

This section is empty.

Functions

func CopyFile

func CopyFile(dst, src string) (int64, error)

UTILS (copyfile)

Types

type Data

type Data struct {
	Offset  uint32
	Payload []byte
}

Data Struct Contém os registros do Push

type DataChannelResponse

type DataChannelResponse struct {
	Response []byte
	Err      error
}

type DiskQueue

type DiskQueue struct {
	// contains filtered or unexported fields
}

func New

func New(dbdir string) (dq *DiskQueue, err error)

func (*DiskQueue) Close

func (dq *DiskQueue) Close() (err error)

Disk Storage Close

func (*DiskQueue) MaxSize

func (dq *DiskQueue) MaxSize(m uint64)

func (*DiskQueue) Pop

func (dq *DiskQueue) Pop() ([]byte, error)

func (*DiskQueue) PopReadOnly

func (dq *DiskQueue) PopReadOnly(nroRec uint64) (data [][]byte, nroRecDone uint64)

POP READ ONLY ========================================================

func (*DiskQueue) Push

func (dq *DiskQueue) Push(s []byte) error

func (*DiskQueue) ReadDelRecord

func (dq *DiskQueue) ReadDelRecord() (offset int64, err error)

Read last del record

func (*DiskQueue) ReadHeader

func (dq *DiskQueue) ReadHeader() (rec *Record, err error)

func (*DiskQueue) ReadPayload

func (dq *DiskQueue) ReadPayload(rec *Record) (err error)

func (*DiskQueue) SetCleanerTime

func (dq *DiskQueue) SetCleanerTime(d time.Duration)

func (*DiskQueue) WriteDelRecord

func (dq *DiskQueue) WriteDelRecord(off int64, crcpush uint32) error

type RecData

type RecData struct {
	Data []byte
}

type Record

type Record struct {
	Len     int32
	Crc     uint32
	Payload []byte
}

Timestamp into payload In-memory control active segments

type RecordPop

type RecordPop struct {
	Crc     uint32 //10 + space
	Offset  int64  //20 + space
	CrcPush uint32 //10 + \n
}

uint32 + int64 (4+8) = 12 bytes offset crc + offset last pop record

Jump to

Keyboard shortcuts

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