...
Package wait
Overview ▹
Index ▹
func NewTimeList ¶
func NewTimeList() *timeList
type Wait ¶
Wait is an interface that provides the ability to wait and trigger events that are associated with IDs.
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 }
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) }