diff options
author | yzct12345 <87620833+yzct12345@users.noreply.github.com> | 2021-08-13 19:22:51 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-08-13 19:22:51 +0000 |
commit | 0ba521e63455d2222b61bde70abfe4fed43ee117 (patch) | |
tree | dbb2d74fb6977b22e4cef4bd3658ba2f8060ae18 /src/core/core.cpp | |
parent | 71d8d84b59ae6e1cfad37d70e6ea7d61001326f3 (diff) |
threadsafe_queue: Fix deadlock
This fixes a lost wakeup in SPSCQueue. If the reader is in just the right position, the writer's notification will be lost and this will be a problem if the writer then does something to wait on the reader.
This was discovered to affect my upcoming stacktrace PR. I don't think any performance decrease will be noticeable because an uncontended mutex is smart enough to skip the syscall. This PR might also resolve some rare deadlocks but I don't know of any examples.
Diffstat (limited to 'src/core/core.cpp')
0 files changed, 0 insertions, 0 deletions