net_instaweb::CheckingThreadSystem Class Reference

#include "checking_thread_system.h"

Inheritance diagram for net_instaweb::CheckingThreadSystem:
net_instaweb::ThreadSystem

List of all members.

Classes

class  Mutex
class  RWLock

Public Member Functions

 CheckingThreadSystem (ThreadSystem *thread_system)
virtual MutexNewMutex ()
virtual RWLockNewRWLock ()
virtual TimerNewTimer ()
 Creates and returns a real-time timer. Caller is responsible for deleting.

Friends

class Mutex

Detailed Description

A thread system whose mutex and condvar factories yield implementations that permit checking of lock invariants using DCheckLocked(). This can be wrapped around an unchecked implementation. This implementation checks invariants using CHECK (so does checking unconditionally). To check conditionally, do the wrapping depending upon the setting of NDEBUG. This is done by the ThreadSystem::CreateThreadSystem() factory by default, which is why the invariant checking method is called DCheckLock (Debug check lock) and not CheckLock.


Member Function Documentation

virtual Mutex* net_instaweb::CheckingThreadSystem::NewMutex (  )  [virtual]

Makes a new mutex for this system.

See also CondvarCapableMutex::NewCondvar.

Implements net_instaweb::ThreadSystem.

virtual RWLock* net_instaweb::CheckingThreadSystem::NewRWLock (  )  [virtual]

This lock will provide following guarantee -

  • Reader reentrant safe.
  • Writer Priority, this ensures no writer starvation.

Implements net_instaweb::ThreadSystem.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Generated on Tue May 29 16:34:08 2012 for Page Speed Optimization Libraries by  doxygen 1.6.3