diff options
author | Wladimir J. van der Laan <laanwj@protonmail.com> | 2020-12-08 21:49:06 +0100 |
---|---|---|
committer | Wladimir J. van der Laan <laanwj@protonmail.com> | 2020-12-15 17:21:06 +0100 |
commit | cd03513dc2fcccaa142e9632a28b38efd0056436 (patch) | |
tree | 639d20a2fe5c505279d276517d3ddd868c812ba0 /src/wallet/test/coinselector_tests.cpp | |
parent | 16b31cc4c516cdcaf6d2eb2dd1255cc3e6973ba1 (diff) |
init: Signal-safe instant shutdown
Replace the 200ms polling loop with a faster and more efficient waiting
operation.
This was tried a few times before, but given up every time because
solutions use a condition variable which is not safe for use in signals
as they need to be reentrant.
On UNIX-ish OSes, use a safe way: a pipe. When shutdown is requested
write a dummy byte to the pipe. Waiting for shutdown is a matter of a
blocking read from the pipe.
On Windows, there are no signals so using a condition variable is safe.
Diffstat (limited to 'src/wallet/test/coinselector_tests.cpp')
0 files changed, 0 insertions, 0 deletions