README ¶ ringbuffer Expand ▾ Collapse ▴ Documentation ¶ Overview ¶ Ringbuffer implements a ring buffer that can leverage different storage engines and wait strategies. It is modeled after the LMAX Disruptor architecture. Index ¶ func GetMinSeq(gates []Sequencer, min int64) (int64, error) func PowerOfTwo(n int) bool type Consumer type Producer type RingBuffer type Sequencer Constants ¶ This section is empty. Variables ¶ This section is empty. Functions ¶ func GetMinSeq ¶ func GetMinSeq(gates []Sequencer, min int64) (int64, error) func PowerOfTwo ¶ func PowerOfTwo(n int) bool powerOfTwo determines whether n is of power of two Types ¶ type Consumer ¶ type Consumer interface { Get() (interface{}, error) } type Producer ¶ type Producer interface { Put(interface{}) (int, error) } type RingBuffer ¶ type RingBuffer interface { NewProducer() (Producer, error) NewConsumer() (Consumer, error) } type Sequencer ¶ type Sequencer interface { Get() (int64, error) Set(int64) error Next(int) (int64, error) Request(int) (int64, error) Commit(int64) error AddGatingSequence(...Sequencer) RemoveGatingSequence(Sequencer) } Source Files ¶ View all Source files ringbuffer.go Directories ¶ Show internal Expand all Path Synopsis bytebuffer sequence Click to show internal directories. Click to hide internal directories.