![]() |
BSHA3
0.17.99
P2P Blockchain, based on Bitcoin
|
Go to the source code of this file.
Classes | |
class | CValidationInterface |
Implement this to subscribe to events generated in validation. More... | |
class | CMainSignals |
Functions | |
void | RegisterValidationInterface (CValidationInterface *pwalletIn) |
Register a wallet to receive updates from core. More... | |
void | UnregisterValidationInterface (CValidationInterface *pwalletIn) |
Unregister a wallet from core. More... | |
void | UnregisterAllValidationInterfaces () |
Unregister all wallets from core. More... | |
void | CallFunctionInValidationInterfaceQueue (std::function< void()> func) |
Pushes a function to callback onto the notification queue, guaranteeing any callbacks generated prior to now are finished when the function is called. More... | |
void | SyncWithValidationInterfaceQueue () LOCKS_EXCLUDED(cs_main) |
This is a synonym for the following, which asserts certain locks are not held: std::promise<void> promise; CallFunctionInValidationInterfaceQueue([&promise] { promise.set_value(); }); promise.get_future().wait();. More... | |
CMainSignals & | GetMainSignals () |
Variables | |
CCriticalSection | cs_main |
void CallFunctionInValidationInterfaceQueue | ( | std::function< void()> | func | ) |
Pushes a function to callback onto the notification queue, guaranteeing any callbacks generated prior to now are finished when the function is called.
Be very careful blocking on func to be called if any locks are held - validation interface clients may not be able to make progress as they often wait for things like cs_main, so blocking until func is called with cs_main will result in a deadlock (that DEBUG_LOCKORDER will miss).
Definition at line 117 of file validationinterface.cpp.
CMainSignals& GetMainSignals | ( | ) |
void RegisterValidationInterface | ( | CValidationInterface * | pwalletIn | ) |
Register a wallet to receive updates from core.
Definition at line 75 of file validationinterface.cpp.
void SyncWithValidationInterfaceQueue | ( | ) |
This is a synonym for the following, which asserts certain locks are not held: std::promise<void> promise; CallFunctionInValidationInterfaceQueue([&promise] { promise.set_value(); }); promise.get_future().wait();.
Definition at line 121 of file validationinterface.cpp.
void UnregisterAllValidationInterfaces | ( | ) |
Unregister all wallets from core.
Definition at line 101 of file validationinterface.cpp.
void UnregisterValidationInterface | ( | CValidationInterface * | pwalletIn | ) |
Unregister a wallet from core.
Definition at line 88 of file validationinterface.cpp.
CCriticalSection cs_main |
Definition at line 216 of file validation.cpp.