refactor: replace RecursiveMutex m_cs_callbacks_pending
with Mutex (and rename)
#24069
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR is related to #19303 and gets rid of the RecursiveMutex
m_cs_callbacks_pending
. All of the critical sections (6 in total) only directly access the guarded elements, i.e. it is not possible that within one section another one is called, and we can use a regular Mutex:bitcoin/src/scheduler.cpp
Lines 138 to 145 in 807169e
bitcoin/src/scheduler.cpp
Lines 152 to 160 in 807169e
bitcoin/src/scheduler.cpp
Lines 169 to 172 in 807169e
bitcoin/src/scheduler.cpp
Lines 184 to 187 in 807169e
bitcoin/src/scheduler.cpp
Lines 197 to 199 in 807169e
bitcoin/src/scheduler.cpp
Lines 203 to 206 in 807169e
Also, it is renamed to adapt to the (unwritten) naming convention to use the
_mutex
suffix rather than thecs_
prefix.