GlobalObjects
Alle Klassen Namensbereiche Dateien Funktionen Variablen Typdefinitionen Aufzählungen Aufzählungswerte Freundbeziehungen Makrodefinitionen Seiten
EuEndlessPThread.h
gehe zur Dokumentation dieser Datei
1#ifndef INC_EUENDLESSPTHREAD_H
2#define INC_EUENDLESSPTHREAD_H
3//-----------------------------------------------------------------------------
68//-----------------------------------------------------------------------------
69#include "EuAPThread.h"
70#include <semaphore.h>
71//-----------------------------------------------------------------------------
100class __euthread_export_dll EuEndlessPThread : public EuAPThread
101{
102 public:
103 //============== local enums
104 //-------------------------------------------------------------------------
149 //-------------------------------------------------------------------------
150
151 protected:
152 //============== Attribute
153 //-------------------------------------------------------------------------
164 //-------------------------------------------------------------------------
174 pthread_mutex_t m_ExclusiveAccessMutex;
175 //-------------------------------------------------------------------------
185 pthread_cond_t m_BreakCond;
186 //-------------------------------------------------------------------------
200 //-------------------------------------------------------------------------
218 //-------------------------------------------------------------------------
229 //-------------------------------------------------------------------------
230
231 public:
232 //============== De- & Konstruktoren
233 //-------------------------------------------------------------------------
244 //-------------------------------------------------------------------------
267 //-------------------------------------------------------------------------
268
269 private:
270 //============== Copy-Konstruktor
271 //-------------------------------------------------------------------------
282 //-------------------------------------------------------------------------
283
284 protected:
285 //========== Static Thread-Methode ========
286 //-------------------------------------------------------------------------
304 static void * threadWork( void * pParam );
305 //-------------------------------------------------------------------------
306
307 //========== Methoden ========
308 //-------------------------------------------------------------------------
319 //-------------------------------------------------------------------------
320
321 public:
322 //========== Methoden ========
323 //-------------------------------------------------------------------------
341 virtual int start();
342 //-------------------------------------------------------------------------
362 virtual int cancel();
363 //-------------------------------------------------------------------------
375 //-------------------------------------------------------------------------
386 //-------------------------------------------------------------------------
397 //-------------------------------------------------------------------------
413 virtual int takeABreak();
414 //-------------------------------------------------------------------------
428 virtual int finishBreak();
429 //-------------------------------------------------------------------------
442 //-------------------------------------------------------------------------
454 //-------------------------------------------------------------------------
455
456 private:
457 //============== Operatoren
458 //-------------------------------------------------------------------------
469 //-------------------------------------------------------------------------
470};
471#endif
Header für EuAPThread
EuAPThread & operator=(const EuAPThread &)
virtual int finishBreak()
void unsetExclusiveAccess()
void setExclusiveAccess()
EuEndlessPThread(const EuEndlessPThread &)
virtual int cancel()
pthread_cond_t m_BreakCond
Definition EuEndlessPThread.h:185
EuPTHREAD_ORDER
Definition EuEndlessPThread.h:116
@ EuPTHREAD_END
Definition EuEndlessPThread.h:147
@ EuPTHREAD_WORK
Definition EuEndlessPThread.h:126
@ EuPTHREAD_TAKE_A_BREAK
Definition EuEndlessPThread.h:137
sem_t m_Semaphore
Definition EuEndlessPThread.h:199
virtual ~EuEndlessPThread()
virtual int start()
static void * threadWork(void *pParam)
pthread_mutex_t m_ExclusiveAccessMutex
Definition EuEndlessPThread.h:174
bool m_bInExluzivAccess
Definition EuEndlessPThread.h:228
EuPTHREAD_ORDER m_eThreadOrder
Definition EuEndlessPThread.h:163
virtual int takeABreak()
int m_iBreakCounter
Definition EuEndlessPThread.h:217