JH-Toolkit v1.4.1
An engineering-oriented C++20 toolkit with duck-typed concepts, static design, async coroutines, and semantic containers — header-only, RTTI-free, and concurrency-friendly.
Loading...
Searching...
No Matches
jh::concepts::shared_lockable Concept Reference

Concept for shared (reader) lockable objects. More...

#include <jh/conceptual/mutex_like.h>

Concept definition

template<typename M>
concept shared_lockable = requires(M m) {
{ m.lock_shared() } -> std::same_as<void>;
{ m.try_lock_shared() } -> std::convertible_to<bool>;
{ m.unlock_shared() } -> std::same_as<void>;
}
Concept for shared (reader) lockable objects.
Definition mutex_like.h:142

Detailed Description

Concept for shared (reader) lockable objects.

Requires shared locking interface — lock_shared(), unlock_shared(), and try_lock_shared().

Examples:

  • std::shared_mutex
  • std::shared_timed_mutex