template<class Host, class MutexPolicy = TE_DEFAULT_MUTEX_POLICY, class LockReadingPolicy = TE_DEFAULT_LOCK_READING_POLICY, class LockWritingPolicy = TE_DEFAULT_LOCK_WRITING_POLICY>
class te::common::ClassLevelLockable< Host, MutexPolicy, LockReadingPolicy, LockWritingPolicy >
This policy assures a class-level locking scheme for a derived class.
Requirements on types:
-
Host: is the type of the derived class from this policy.
-
MutexPolicy: any type that have a lock and unlock method. When using boost it can be one of the follwoing: boost::mutex, bost::timed_mutex, bost::recursive_mutex, boost::recursive_timed_mutex or boost::shared_mutex.
-
The LockReadingPolicy and LockWritingPolicy may be: boost::lock_guard, boost::unique_lock, boost::shared_lock, boost::upgrade_lock, boost::upgrade_to_unique_lock
Definition at line 250 of file ThreadingPolicies.h.