JetByteTools::Win32::ICriticalSection Class Reference
[Win32 Synchronization primitivesInterfaces]

Inherited by JetByteTools::Win32::CCriticalSection, JetByteTools::Win32::CMultiCriticalSection, and JetByteTools::Win32::COptex.

Inheritance diagram for JetByteTools::Win32::ICriticalSection:

Inheritance graph
[legend]
List of all members.

Detailed Description

An interface onto the operating system Critical Section API. Note that this class only provides the basic Enter() and Leave() functionality, should TryEnter() ever be required then it's likely that a new interface will be added that includes this rather than extending this interface to include it.


Public Member Functions

virtual void Enter ()=0
 Enter the critical section and lock other threads outside.
virtual void Leave ()=0
 Leave the critical section and allow another thread to enter.
virtual ~ICriticalSection ()
 Instances of this interface can be deleted by their users.

Classes

class  ConditionalOwner
 A class that may take ownership of an instance of ICriticalSection. That is it calls Enter() in the constructor and Leave() in the destructor (but only if locked passed as true to the constructor) and can therefore be used to support scope based locking and unlocking of instances of ICriticalSection. More...
class  Owner
 A class that takes ownership of an instance of ICriticalSection. That is it calls Enter() in the constructor and Leave() in the destructor and can therefore be used to support scope based locking and unlocking of instances of ICriticalSection. More...


Constructor & Destructor Documentation

virtual JetByteTools::Win32::ICriticalSection::~ICriticalSection (  )  [inline, virtual]

Instances of this interface can be deleted by their users.


Member Function Documentation

virtual void JetByteTools::Win32::ICriticalSection::Enter (  )  [pure virtual]

Enter the critical section and lock other threads outside.

Implemented in JetByteTools::Win32::CCriticalSection, JetByteTools::Win32::CMultiCriticalSection, and JetByteTools::Win32::COptex.

virtual void JetByteTools::Win32::ICriticalSection::Leave (  )  [pure virtual]

Leave the critical section and allow another thread to enter.

Implemented in JetByteTools::Win32::CCriticalSection, JetByteTools::Win32::CMultiCriticalSection, and JetByteTools::Win32::COptex.


Generated on Tue May 8 17:48:12 2007 for JetByte Socket Tools by  doxygen 1.5.2