spscq

package
v0.0.1 Latest Latest
Warning

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

Go to latest
Published: Mar 21, 2024 License: BSD-3-Clause Imports: 8 Imported by: 2

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ByteChunkQ

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

func NewByteChunkQ

func NewByteChunkQ(size, pause, chunk int64) (*ByteChunkQ, error)

func (*ByteChunkQ) AcquireRead

func (q *ByteChunkQ) AcquireRead() []byte

func (*ByteChunkQ) AcquireWrite

func (q *ByteChunkQ) AcquireWrite() []byte

func (*ByteChunkQ) FailedReads

func (q *ByteChunkQ) FailedReads() int64

func (*ByteChunkQ) FailedWrites

func (q *ByteChunkQ) FailedWrites() int64

func (*ByteChunkQ) ReleaseRead

func (q *ByteChunkQ) ReleaseRead()

func (*ByteChunkQ) ReleaseReadLazy

func (q *ByteChunkQ) ReleaseReadLazy()

func (*ByteChunkQ) ReleaseWrite

func (q *ByteChunkQ) ReleaseWrite()

func (*ByteChunkQ) ReleaseWriteLazy

func (q *ByteChunkQ) ReleaseWriteLazy()

func (*ByteChunkQ) String

func (q *ByteChunkQ) String() string

type ByteChunkQueue

type ByteChunkQueue interface {
	//Acquire/Release Read
	AcquireRead() []byte
	ReleaseRead()
	ReleaseReadLazy()
	//Acquire/Release Write
	AcquireWrite() []byte
	ReleaseWrite()
	ReleaseWriteLazy()
}

func NewByteChunkQueue

func NewByteChunkQueue(size, pause, chunk int64) (ByteChunkQueue, error)

type ByteMsgQ

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

func NewByteMsgQ

func NewByteMsgQ(size, pause int64) (*ByteMsgQ, error)

func (*ByteMsgQ) AcquireRead

func (q *ByteMsgQ) AcquireRead() []byte

func (*ByteMsgQ) AcquireWrite

func (q *ByteMsgQ) AcquireWrite(bufferSize int64) []byte

func (*ByteMsgQ) FailedReads

func (q *ByteMsgQ) FailedReads() int64

func (*ByteMsgQ) FailedWrites

func (q *ByteMsgQ) FailedWrites() int64

func (*ByteMsgQ) ReleaseRead

func (q *ByteMsgQ) ReleaseRead()

func (*ByteMsgQ) ReleaseReadLazy

func (q *ByteMsgQ) ReleaseReadLazy()

func (*ByteMsgQ) ReleaseWrite

func (q *ByteMsgQ) ReleaseWrite()

func (*ByteMsgQ) ReleaseWriteLazy

func (q *ByteMsgQ) ReleaseWriteLazy()

func (*ByteMsgQ) String

func (q *ByteMsgQ) String() string

type ByteMsgQueue

type ByteMsgQueue interface {
	//Acquire/Release Read
	AcquireRead() []byte
	ReleaseRead()
	ReleaseReadLazy()
	//Acquire/Release Write
	AcquireWrite(int64) []byte
	ReleaseWrite()
	ReleaseWriteLazy()
}

func NewByteMsgQueue

func NewByteMsgQueue(size, pause int64) (ByteMsgQueue, error)

type PointerQ

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

func NewPointerQ

func NewPointerQ(size, pause int64) (*PointerQ, error)

func (*PointerQ) AcquireRead

func (q *PointerQ) AcquireRead(bufferSize int64) []unsafe.Pointer

func (*PointerQ) AcquireWrite

func (q *PointerQ) AcquireWrite(bufferSize int64) []unsafe.Pointer

func (*PointerQ) FailedReads

func (q *PointerQ) FailedReads() int64

func (*PointerQ) FailedWrites

func (q *PointerQ) FailedWrites() int64

func (*PointerQ) ReadSingle

func (q *PointerQ) ReadSingle() unsafe.Pointer

func (*PointerQ) ReadSingleBlocking

func (q *PointerQ) ReadSingleBlocking() unsafe.Pointer

func (*PointerQ) ReadSingleLazy

func (q *PointerQ) ReadSingleLazy() unsafe.Pointer

func (*PointerQ) ReleaseRead

func (q *PointerQ) ReleaseRead()

func (*PointerQ) ReleaseReadLazy

func (q *PointerQ) ReleaseReadLazy()

func (*PointerQ) ReleaseWrite

func (q *PointerQ) ReleaseWrite()

func (*PointerQ) ReleaseWriteLazy

func (q *PointerQ) ReleaseWriteLazy()

func (*PointerQ) String

func (q *PointerQ) String() string

func (*PointerQ) WriteSingle

func (q *PointerQ) WriteSingle(val unsafe.Pointer) bool

func (*PointerQ) WriteSingleBlocking

func (q *PointerQ) WriteSingleBlocking(val unsafe.Pointer)

func (*PointerQ) WriteSingleLazy

func (q *PointerQ) WriteSingleLazy(val unsafe.Pointer) bool

type PointerQueue

type PointerQueue interface {
	// Batch Read/Write
	AcquireRead(int64) []unsafe.Pointer
	ReleaseRead()
	ReleaseReadLazy()
	AcquireWrite(int64) []unsafe.Pointer
	ReleaseWrite()
	ReleaseWriteLazy()
	// Single Read/Write
	ReadSingle() unsafe.Pointer
	WriteSingle(unsafe.Pointer) bool
	ReadSingleBlocking() unsafe.Pointer
	WriteSingleBlocking(unsafe.Pointer)
	ReadSingleLazy() unsafe.Pointer
	WriteSingleLazy(unsafe.Pointer) bool
}

func NewPointerQueue

func NewPointerQueue(size, pause int64) (PointerQueue, error)

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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