Your job funcs should implement context package semantics. If you use Manager.Run, FWG will now gracefully shutdown. After a default delay of 25 seconds, FWG will cancel the root Context which should quickly cancel any lingering jobs running under that Manager. If your jobs run long and do not respond to context cancellation, you risk orphaning any jobs in-progress. They will linger on the Busy tab until the job's reserve_for timeout.
Please also note that Manager.RunWithContext added in 1.6.0 does not implement the shutdown delay but the README example contains the code to implement it.
Implement hard shutdown timeout of 25 seconds.
Your job funcs should implement
context
package semantics. If you useManager.Run
, FWG will now gracefully shutdown. After a default delay of 25 seconds, FWG will cancel the root Context which should quickly cancel any lingering jobs running under that Manager. If your jobs run long and do not respond to context cancellation, you risk orphaning any jobs in-progress. They will linger on the Busy tab until the job'sreserve_for
timeout.Please also note that
Manager.RunWithContext
added in1.6.0
does not implement the shutdown delay but the README example contains the code to implement it.Fixes #76