wait

package
v3.3.25-5+incompatible Latest Latest
Warning

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

Go to latest
Published: Mar 5, 2023 License: Apache-2.0 Imports: 2 Imported by: 0

Documentation

Overview

Package wait provides utility functions for polling, listening using Go channel.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewTimeList

func NewTimeList() *timeList

Types

type Wait

type Wait interface {
	// Register waits returns a chan that waits on the given ID.
	// The chan will be triggered when Trigger is called with
	// the same ID.
	Register(id uint64) <-chan interface{}
	// Trigger triggers the waiting chans with the given ID.
	Trigger(id uint64, x interface{})
	IsRegistered(id uint64) bool
}

Wait is an interface that provides the ability to wait and trigger events that are associated with IDs.

func New

func New() Wait

New creates a Wait.

func NewWithResponse

func NewWithResponse(ch <-chan interface{}) Wait

type WaitTime

type WaitTime interface {
	// Wait returns a chan that waits on the given logical deadline.
	// The chan will be triggered when Trigger is called with a
	// deadline that is later than the one it is waiting for.
	Wait(deadline uint64) <-chan struct{}
	// Trigger triggers all the waiting chans with an earlier logical deadline.
	Trigger(deadline uint64)
}

Jump to

Keyboard shortcuts

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