Versions in this module Expand all Collapse all v0 v0.0.6 Jan 31, 2023 v0.0.5 Dec 6, 2022 Changes in this version + type BlockingQueue interface + Dequeue func(ctx context.Context) (T, error) + Enqueue func(ctx context.Context, t T) error + type ConcurrentArrayBlockingQueue struct + func NewConcurrentArrayBlockingQueue(capacity int) *ConcurrentArrayBlockingQueue[T] + func (c *ConcurrentArrayBlockingQueue[T]) AsSlice() []T + func (c *ConcurrentArrayBlockingQueue[T]) Dequeue(ctx context.Context) (T, error) + func (c *ConcurrentArrayBlockingQueue[T]) Enqueue(ctx context.Context, t T) error + func (c *ConcurrentArrayBlockingQueue[T]) Len() int + type ConcurrentLinkedBlockingQueue struct + func NewConcurrentLinkedBlockingQueue(capacity int) *ConcurrentLinkedBlockingQueue[T] + func (c *ConcurrentLinkedBlockingQueue[T]) AsSlice() []T + func (c *ConcurrentLinkedBlockingQueue[T]) Dequeue(ctx context.Context) (T, error) + func (c *ConcurrentLinkedBlockingQueue[T]) Enqueue(ctx context.Context, t T) error + func (c *ConcurrentLinkedBlockingQueue[T]) Len() int + type ConcurrentLinkedQueue struct + func NewConcurrentLinkedQueue() *ConcurrentLinkedQueue[T] + func (c *ConcurrentLinkedQueue[T]) Dequeue() (T, error) + func (c *ConcurrentLinkedQueue[T]) Enqueue(t T) error + type ConcurrentPriorityQueue struct + func NewConcurrentPriorityQueue(capacity int, compare ekit.Comparator[T]) *ConcurrentPriorityQueue[T] + func (c *ConcurrentPriorityQueue[T]) Cap() int + func (c *ConcurrentPriorityQueue[T]) Dequeue() (T, error) + func (c *ConcurrentPriorityQueue[T]) Enqueue(t T) error + func (c *ConcurrentPriorityQueue[T]) Len() int + func (c *ConcurrentPriorityQueue[T]) Peek() (T, error) + type DelayQueue struct + func NewDelayQueue(c int) *DelayQueue[T] + func (d *DelayQueue[T]) Dequeue(ctx context.Context) (T, error) + func (d *DelayQueue[T]) Enqueue(ctx context.Context, t T) error + type Delayable interface + Delay func() time.Duration + type Queue interface + Dequeue func() (T, error) + Enqueue func(t T) error