Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ClosablePool ¶
type ClosablePool struct {
// contains filtered or unexported fields
}
ClosablePool keeps a reference to a pool of closable types and closes them in tiers.
func NewClosablePool ¶
func NewClosablePool() *ClosablePool
NewClosablePool creates a fresh pool of closable types.
func (*ClosablePool) Add ¶
func (c *ClosablePool) Add(tier int, closable types.Closable)
Add adds a closable type to the pool, tiers are used to partition and order the closing of types (starting at the lowest tier and working upwards). Closable types in a single tier are closed in the order that they are added.
func (*ClosablePool) Close ¶
func (c *ClosablePool) Close(timeout time.Duration) error
Close attempts to close and clean up all stored closables in the determined order. If the timeout is met whilst working through the pool there is no indication of how far the pool has been progressed, thus this timeout should only be used for preventing severe blocking of a service.
Directories ¶
Path | Synopsis |
---|---|
Package disk contains cross platform disk statistics utilities.
|
Package disk contains cross platform disk statistics utilities. |
Package service contains utilities for bootstrapping a server such as config, logging and metrics.
|
Package service contains utilities for bootstrapping a server such as config, logging and metrics. |
config
Package config contains utilities for reading and parsing service configuration files.
|
Package config contains utilities for reading and parsing service configuration files. |
log
Package log contains utilities for logging in a modular interface.
|
Package log contains utilities for logging in a modular interface. |
metrics
Package metrics contains a type for aggregating and propagating metrics to various services based on configuration.
|
Package metrics contains a type for aggregating and propagating metrics to various services based on configuration. |
Package test contains helpers for setting up test utilties.
|
Package test contains helpers for setting up test utilties. |
Package text includes utilities for working with text that might contain variables.
|
Package text includes utilities for working with text that might contain variables. |
Package throttle implements throttle strategies.
|
Package throttle implements throttle strategies. |