Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
Global is the global interrupt handler
Functions ¶
This section is empty.
Types ¶
type Handler ¶
type Handler struct {
// contains filtered or unexported fields
}
Handler guarantees execution of notifications after a critical section (the function passed to a Run method), even in the presence of process termination. It guarantees exactly once invocation of the provided notify functions.
func New ¶
New creates a new handler that guarantees all notify functions are run after the critical section exits (or is interrupted by the OS), then invokes the final handler. If no final handler is specified, the default final is `os.Exit(1)`. A handler can only be used for one critical section.
func (*Handler) Run ¶
Run ensures that the function fn is run and runs the notify function if interrupted meanwhile
func (*Handler) RunAlways ¶
RunAlways ensures that the function fn is run and runs the notify function if interrupted meanwhile or the function has ended
func (*Handler) Signal ¶
Signal is called when an os.Signal is received, and guarantees that all notifications are executed, then the final handler is executed. This function should only be called once per Handler instance.