diff options
Diffstat (limited to 'ACE/apps/JAWS3/jaws3/TPR_Concurrency.h')
-rw-r--r-- | ACE/apps/JAWS3/jaws3/TPR_Concurrency.h | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/ACE/apps/JAWS3/jaws3/TPR_Concurrency.h b/ACE/apps/JAWS3/jaws3/TPR_Concurrency.h new file mode 100644 index 00000000000..9feff7da706 --- /dev/null +++ b/ACE/apps/JAWS3/jaws3/TPR_Concurrency.h @@ -0,0 +1,35 @@ +/* -*- c++ -*- */ +// $Id$ + +#ifndef JAWS_TPR_CONCURRENCY_H +#define JAWS_TPR_CONCURRENCY_H + +#include "ace/Atomic_Op.h" + +#include "jaws3/Concurrency.h" + +class JAWS_Export JAWS_TPR_Concurrency : public JAWS_Concurrency_Impl +{ +public: + + JAWS_TPR_Concurrency (void); + + int putq (JAWS_Protocol_Handler *ph); + + int getq (JAWS_Protocol_Handler *&ph); + + static JAWS_TPR_Concurrency * instance (void) + { + return ACE_Singleton<JAWS_TPR_Concurrency, ACE_SYNCH_MUTEX>::instance (); + } + +private: + + ACE_Atomic_Op<ACE_SYNCH_MUTEX, int> getting_; + int min_number_of_threads_; + int shutdown_task_; + int error_; + +}; + +#endif /* JAWS_TPR_CONCURRENCY_H */ |