Documentation ¶
Overview ¶
Package signal provides helper functions for dealing with signals across various operating systems.
Index ¶
Constants ¶
View Source
const ( // SIGCHLD is a signal sent to a process when a child process terminates, is interrupted, or resumes after being interrupted. SIGCHLD = syscall.SIGCHLD // SIGWINCH is a signal sent to a process when its controlling terminal changes its size SIGWINCH = syscall.SIGWINCH // DefaultStopSignal is the syscall signal used to stop a container in unix systems. DefaultStopSignal = "SIGTERM" )
Variables ¶
View Source
var SignalMap = map[string]syscall.Signal{}
SignalMap is an empty map of signals for unsupported platform.
Functions ¶
func ParseSignal ¶
ParseSignal translates a string to a valid syscall signal. It returns an error if the signal map doesn't include the given signal.
func Trap ¶
func Trap(cleanup func())
Trap sets up a simplified signal "trap", appropriate for common behavior expected from a vanilla unix command-line tool in general (and the Docker engine in particular).
- If SIGINT or SIGTERM are received, `cleanup` is called, then the process is terminated.
- If SIGINT or SIGTERM are received 3 times before cleanup is complete, then cleanup is skipped and the process is terminated immediately (allows force quit of stuck daemon)
- A SIGQUIT always causes an exit without cleanup, with a goroutine dump preceding exit.
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.