Documentation
¶
Index ¶
- type Consumer
- type Queue
- func (c *Queue[T]) AddOnClosed(funs ...func()) *Queue[T]
- func (c *Queue[T]) AddOnConsume(funs ...func(T)) *Queue[T]
- func (c *Queue[T]) Info() (int, int)
- func (c *Queue[T]) Log() *zap.SugaredLogger
- func (c *Queue[T]) Name() string
- func (c *Queue[T]) Push(inp T, prio ...bool)
- func (c *Queue[T]) Run()
- func (c *Queue[T]) Start(consumer Consumer[T], ctx context.Context)
- func (c *Queue[T]) Stop()
- type VarBuffered
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Queue ¶
type Queue[T any] struct { // contains filtered or unexported fields }
func NewQueueWithBufferSize ¶
func (*Queue[T]) AddOnClosed ¶
AddOnClosed specifies functions invoked after the queue is closed and emptied
func (*Queue[T]) AddOnConsume ¶
func (*Queue[T]) Log ¶
func (c *Queue[T]) Log() *zap.SugaredLogger
type VarBuffered ¶
type VarBuffered[T any] struct { // contains filtered or unexported fields }
VarBuffered implements variable size synchronized FIFO queue
func New ¶
func New[T any](bufsize ...int) *VarBuffered[T]
func (*VarBuffered[T]) Close ¶
func (q *VarBuffered[T]) Close()
Close closes VarBuffered deferred until all elements are pulled
func (*VarBuffered[T]) Consume ¶
func (q *VarBuffered[T]) Consume(consumerFunctions ...func(elem T))
Consume reads all elements of the queue until it is closed
func (*VarBuffered[T]) Info ¶
func (q *VarBuffered[T]) Info() (int, int)
func (*VarBuffered[T]) Len ¶
func (q *VarBuffered[T]) Len() int
Len returns number of elements in the queue. Approximate +- 1 !
func (*VarBuffered[T]) Push ¶
func (q *VarBuffered[T]) Push(elem T, priority ...bool) bool
Push pushes element
func (*VarBuffered[T]) PushAny ¶
func (q *VarBuffered[T]) PushAny(elem any) bool
Click to show internal directories.
Click to hide internal directories.