Fix workqueue memory leak

Kubernetes-commit: 25060beef0c536e80b53507ec445695a7305db00
This commit is contained in:
xuzhonghu 2021-09-14 09:53:53 +08:00 committed by Kubernetes Publisher
parent 2ed3e42c43
commit 2f21912570

View File

@ -161,7 +161,10 @@ func (q *Type) Get() (item interface{}, shutdown bool) {
return nil, true return nil, true
} }
item, q.queue = q.queue[0], q.queue[1:] item = q.queue[0]
// The underlying array still exists and reference this object, so the object will not be garbage collected.
q.queue[0] = nil
q.queue = q.queue[1:]
q.metrics.get(item) q.metrics.get(item)