Page Speed Optimization Libraries  1.13.35.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Protected Member Functions | Friends | List of all members
net_instaweb::PthreadThreadSystem Class Reference
Inheritance diagram for net_instaweb::PthreadThreadSystem:
net_instaweb::ThreadSystem net_instaweb::SystemThreadSystem net_instaweb::ApacheThreadSystem

Public Member Functions

virtual CondvarCapableMutexNewMutex ()
 
virtual RWLockNewRWLock ()
 
virtual TimerNewTimer ()
 
virtual ThreadIdGetThreadId () const
 

Protected Member Functions

virtual void BeforeThreadRunHook ()
 

Friends

class PthreadThreadImpl
 

Additional Inherited Members

- Public Types inherited from net_instaweb::ThreadSystem
enum  ThreadFlags { kDetached = 0, kJoinable = 1 }
 

Member Function Documentation

virtual void net_instaweb::PthreadThreadSystem::BeforeThreadRunHook ( )
protectedvirtual

This hook will get invoked by the implementation in the context of a thread before invoking its Run() method.

Reimplemented in net_instaweb::SystemThreadSystem.

virtual ThreadId* net_instaweb::PthreadThreadSystem::GetThreadId ( ) const
virtual

Returns an object holding the current thread ID. The resultant object must be freed by the caller.

Implements net_instaweb::ThreadSystem.

virtual CondvarCapableMutex* net_instaweb::PthreadThreadSystem::NewMutex ( )
virtual

Makes a new mutex for this system.

See also CondvarCapableMutex::NewCondvar.

Implements net_instaweb::ThreadSystem.

virtual RWLock* net_instaweb::PthreadThreadSystem::NewRWLock ( )
virtual

This lock will provide following guarantee -

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

Implements net_instaweb::ThreadSystem.

virtual Timer* net_instaweb::PthreadThreadSystem::NewTimer ( )
virtual

Creates and returns a real-time timer. Caller is responsible for deleting.

Todo:
TODO(jmarantz): consider removing this and controlling timers separately.

Implements net_instaweb::ThreadSystem.

Reimplemented in net_instaweb::ApacheThreadSystem.


The documentation for this class was generated from the following file: