Different type to mark Mutex at global scope
Thread safety analysis can't handle negative assertions about mutexes with global scope well, so mark them with a separate type, and eventually move all the mutexes into classes so they are not globally visible.
See: https://github.com/bitcoin/bitcoin/pull/20272#issuecomment-720755781
| Name | Description |
|---|---|
Mutex | Wrapped mutex: supports waiting but not recursive locking |