diff options
author | Felix Lange <fjl@users.noreply.github.com> | 2017-05-17 02:56:02 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-05-17 02:56:02 +0800 |
commit | e20158176d2061ff95cdf022aa7113aa7c47a98e (patch) | |
tree | a8850b9374d182b490b52c4f407d3c2efd4778c5 /core/events.go | |
parent | ef7b9fb7d0cbcc2e381074f6be82e4791c41bdeb (diff) | |
download | go-tangerine-e20158176d2061ff95cdf022aa7113aa7c47a98e.tar.gz go-tangerine-e20158176d2061ff95cdf022aa7113aa7c47a98e.tar.zst go-tangerine-e20158176d2061ff95cdf022aa7113aa7c47a98e.zip |
les: fix goroutine leak in execQueue (#14480)
execQueue used an atomic counter to track whether the queue had been
closed, but the checking the counter didn't happen because the queue was
blocked on its channel.
Fix it by using a condition variable instead of sync/atomic. I tried an
implementation based on channels first, but it was hard to make it
reliable.
quit now waits for the queue loop to exit.
Diffstat (limited to 'core/events.go')
0 files changed, 0 insertions, 0 deletions