gatelib  2.1
g_mthread_SemaphoreNamed.h
1 #pragma once
2 
3 #include "g_common.h"
4 #include "g_mthread_SemaphoreBase.h"
5 
6 namespace g
7 {
8 namespace mthread
9 {
10 
11 G_EXC_DEFINE_MSG ( SemaphoreCountOverflow , SyncObjectException , "The semaphore count exceeds the maximum value." );
12 
13 class G_LIB_ITEM SemaphoreNamed : public SemaphoreBase
14 {
15 public:
16  //Create a sharable semaphore with
17  G_REF
18  SemaphoreNamed ( const char* name , NamedSyncObjectCreationOptions_t aCreationOptions = g_create_always , GInt32_t initial_count = 0 );
19  SemaphoreNamed ( const SemaphoreNamed& );
20  virtual ~SemaphoreNamed ( );
21 };
22 
23 
24 }//namespace mthread
25 }//namespace g
#define G_EXC_DEFINE_MSG(aexctypename, abaseexctypename, amsg)
Definition: g_exception_macros.h:43
Definition: g.mthread.ThreadSimpleEvent.h:5
Definition: g_mthread_SemaphoreBase.h:10
Definition: g_mthread_SemaphoreNamed.h:13