Versions in this module Expand all Collapse all v0 v0.17.0 Jul 7, 2023 v0.16.0 Apr 12, 2023 Changes in this version + func ForwardContext(ctx context.Context, dst chan<- T, src <-chan T) + func GoAnnotated(ctx context.Context, panicHandler PanicHandler, fn func(context.Context), ...) + func HandlePanic(panicHandler PanicHandler) + func RangeContext(ctx context.Context, ch <-chan T, fn func(T)) + type Abortable struct + func (a *Abortable) Abort() + func (a *Abortable) Do(ctx context.Context, fn func(context.Context)) + type Group struct + func NewGroup(ctx context.Context, panicHandler PanicHandler) *Group + func (g *Group) Cancel() + func (g *Group) CancelAndWait() + func (g *Group) Finish() + func (g *Group) Once(f func(ctx context.Context)) + func (g *Group) Periodic(interval time.Duration, jitter time.Duration, f func(ctx context.Context)) + func (g *Group) PeriodicOrTrigger(interval time.Duration, jitter time.Duration, f func(ctx context.Context)) func() + func (g *Group) Trigger(f func(ctx context.Context)) func() + func (g *Group) WaitToFinish() + type NoopPanicHandler struct + func (n NoopPanicHandler) HandlePanic(r interface{}) + type PanicHandler interface + HandlePanic func(interface{}) + type QueuedChannel struct + func NewQueuedChannel(chanBufferSize, queueCapacity int, panicHandler PanicHandler) *QueuedChannel[T] + func (q *QueuedChannel[T]) Close() + func (q *QueuedChannel[T]) CloseAndDiscardQueued() + func (q *QueuedChannel[T]) Enqueue(items ...T) bool + func (q *QueuedChannel[T]) GetChannel() <-chan T + type WaitGroup struct + func MakeWaitGroup(panicHandler PanicHandler) WaitGroup + func (wg *WaitGroup) Go(f func()) + func (wg *WaitGroup) Wait()