Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Coordinator ¶
type Coordinator struct {
// contains filtered or unexported fields
}
Shutdown coordinator implements a hierarchical await. This way the components can await for their sub-components before terminating.
func NewCoordinator ¶
func NewCoordinator(name string, log *logger.Logger) *Coordinator
func (*Coordinator) CheckNestedDone ¶
func (s *Coordinator) CheckNestedDone() bool
don't block, just check, if all the sub-tree is terminated.
func (*Coordinator) Done ¶
func (s *Coordinator) Done()
func (*Coordinator) Nested ¶
func (s *Coordinator) Nested(name string) *Coordinator
makes a sub-context, with a name (for debugging).
func (*Coordinator) WaitNested ¶
func (s *Coordinator) WaitNested()
func (*Coordinator) WaitNestedWithLogging ¶
func (s *Coordinator) WaitNestedWithLogging(logPeriod time.Duration)
waits to for all the hierarchy to complete. (same as Wait(), but logs what components are still being waited for)
Click to show internal directories.
Click to hide internal directories.