CARMA C++
Thread.h File Reference

Tagged: Fri Nov 14 12:39:37 UTC 2003. More...

#include <iostream>
#include <pthread.h>
#include <string>
#include <unistd.h>

Go to the source code of this file.

Classes

class  sza::util::Thread
 Define a class to encapsulate thread handling. More...
 

Namespaces

 sza
 Define a class for Calibrator control.
 

Macros

#define INSTALL_MUTEX_CLEANUP(mutex, logStream)
 
#define THREAD_CLEAN(fn)   void (fn)(void *arg)
 
#define THREAD_PING(fn)   void (fn)(void *arg)
 
#define THREAD_START(fn)   void* (fn)(void *arg)
 
#define THREAD_STOP(fn)   void (fn)(void *arg)
 
#define UNINSTALL_MUTEX_CLEANUP(logStream)
 

Detailed Description

Tagged: Fri Nov 14 12:39:37 UTC 2003.

Author
Erik Leitch

Definition in file Thread.h.

Macro Definition Documentation

#define INSTALL_MUTEX_CLEANUP (   mutex,
  logStream 
)
Value:
{\
int oldtype;\
if(pthread_setcanceltype(PTHREAD_CANCEL_DEFERRED, &oldtype) != 0) \
logStream.appendSysError(true, "pthread_setcanceltype");\
pthread_cleanup_push(&Thread::unlockMutex, (void *) (&mutex));\
if(oldtype != PTHREAD_CANCEL_DEFERRED && oldtype != PTHREAD_CANCEL_ASYNCHRONOUS) ;\
oldtype = PTHREAD_CANCEL_ASYNCHRONOUS

Definition at line 36 of file Thread.h.

#define UNINSTALL_MUTEX_CLEANUP (   logStream)
Value:
pthread_cleanup_pop(0);\
if(pthread_setcanceltype(oldtype, NULL) != 0) \
logStream.appendSysError(true, "pthread_setcanceltype");\
}

Definition at line 45 of file Thread.h.