'context.CancelFunc' is not called
Reports execution paths that do not call the cancel
function returned by context.WithCancel
and similar functions.
The WithCancel
, WithDeadline
, and WithTimeout
functions take a Context
(the parent) and return a derived Context
(the child) and a CancelFunc
. Calling the CancelFunc
cancels the child and its children, removes the parent's reference to the child, and stops any associated timers. Failing to call the CancelFunc leaks the child and its children until the parent is canceled or the timer fires.
For more information about the context
package, see Package context at go.dev.
Example:
func _(ctx context.Context, cancel func()) {
var ctx2 context.Context
ctx2, cancel = context.WithCancel(ctx)
_ = ctx2
}
Inspection Details | |
---|---|
Available in: | GoLand 2023.3 |
Plugin: | Go, 233.SNAPSHOT |
Last modified: 13 July 2023