A team encountered an unexpected issue with std::shared_mutex on Windows w/ MSVC, causing occasional deadlocks. The behavior is well understood, but the question remains whether it is a bug in std::shared_mutex or the Windows SlimReaderWriter implementation. The issue arises when multiple child threads try to acquire shared locks, with only one succeeding and the rest blocking indefinitely. This behavior can be observed directly or using std::shared_lock/unique_lock. While some believe it may be user error, others argue it should not be allowed to block forever without an exclusive lock, suggesting a bug in SRW implementation. Further investigation is needed for clarity.
https://old.reddit.com/r/cpp/comments/1b55686/maybe_possible_bug_in_stdshared_mutex_on_windows/