Documentation
¶
Overview ¶
Package sprinttable is what keeps the sprint table's refresh alive across a unit restart: ApplyOwnSession puts the refresh in its own session, and AbandonProcessGroup checks the loop plist stops launchd signalling the unit's process group. The table itself is read from Redis and written nowhere (#3326); there is no published file to keep.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AbandonProcessGroup ¶
AbandonProcessGroup reports whether a launchd plist template tells launchd not to signal the unit's process group. kickstart -k SIGTERMs that group by default; with this key set, the signal reaches the unit's own pid and a refresh that already called setsid is not killed a second way.
func ApplyOwnSession ¶
ApplyOwnSession makes cmd a session leader when it execs.
SysProcAttr.Setsid is POSIX setsid() in the child, before exec. Darwin has no setsid(1); this is that call. A child that has called setsid is not in the unit's process group, so launchctl kickstart -k — which SIGTERMs the group launchd is tracking — does not kill the refresh the unit started.
Types ¶
This section is empty.