diff options
author | W. J. van der Laan <laanwj@protonmail.com> | 2021-11-15 18:08:43 +0100 |
---|---|---|
committer | W. J. van der Laan <laanwj@protonmail.com> | 2021-11-15 18:08:49 +0100 |
commit | 7f0f853373703a020529dd9394fca525475086b7 (patch) | |
tree | 34ef9d0d971187e8488ca22276f50d717d656cf4 /src/interfaces | |
parent | 15d109802ab93b0af9647858c9d8adcd8a2db84a (diff) | |
parent | ad085f9ba15c131fc5cc77086a620f2e366aac7c (diff) |
Merge bitcoin/bitcoin#23005: multiprocess: Delay wallet client construction
ad085f9ba15c131fc5cc77086a620f2e366aac7c multiprocess: Delay wallet client construction (Russell Yanofsky)
Pull request description:
Delay wallet client construction until after logging, thread and other init for two reasons:
- More responsive multiprocess GUI startup. When bitcoin-gui is started this moves the call from bitcoin-gui to bitcoin-node that spawns bitcoin-wallet off of the GUI event thread and onto the background GUI init executor thread.
- Avoids feature_logging.py test failures with bitcoin-node by making bitcoin-wallet logging start after bitcoin-node logging starts,
because the tests are not written to handle the bitcoin-wallet logging init code running first.
This partially reverts commit b266b3e0bf29d0f3d5deaeec62d57c5025b35525, moving wallet client creation back to the place it was located before.
---
This PR is part of the [process separation project](https://github.com/bitcoin/bitcoin/projects/10).
ACKs for top commit:
laanwj:
code review ACK ad085f9ba15c131fc5cc77086a620f2e366aac7c
hebasto:
ACK ad085f9ba15c131fc5cc77086a620f2e366aac7c, I have reviewed the code and it looks OK.
Tree-SHA512: 74d957ce2ee096db745c517124f60800185814b06c20db676090e10dce1b90311adbab02865a69731f8c39b9365f9ee14be0830ca1368cac9b474801ea92bad5
Diffstat (limited to 'src/interfaces')
-rw-r--r-- | src/interfaces/node.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/interfaces/node.h b/src/interfaces/node.h index 48d4fd3ee2..ea1cb5ed72 100644 --- a/src/interfaces/node.h +++ b/src/interfaces/node.h @@ -206,6 +206,10 @@ public: using ShowProgressFn = std::function<void(const std::string& title, int progress, bool resume_possible)>; virtual std::unique_ptr<Handler> handleShowProgress(ShowProgressFn fn) = 0; + //! Register handler for wallet client constructed messages. + using InitWalletFn = std::function<void()>; + virtual std::unique_ptr<Handler> handleInitWallet(InitWalletFn fn) = 0; + //! Register handler for number of connections changed messages. using NotifyNumConnectionsChangedFn = std::function<void(int new_num_connections)>; virtual std::unique_ptr<Handler> handleNotifyNumConnectionsChanged(NotifyNumConnectionsChangedFn fn) = 0; |