42 |
|
|
43 |
Mutex::Mutex() { |
Mutex::Mutex() { |
44 |
// the following function call only works on UNIX98 compatible systems |
// the following function call only works on UNIX98 compatible systems |
45 |
|
#if (_XOPEN_SOURCE > 500) |
46 |
if (pthread_mutexattr_settype(&__posix_mutexattr, PTHREAD_MUTEX_ERRORCHECK)) { |
if (pthread_mutexattr_settype(&__posix_mutexattr, PTHREAD_MUTEX_ERRORCHECK)) { |
47 |
std::cout << "Mutex Constructor: Fatal error - unable to pthread_mutexattr_settype(PTHREAD_MUTEX_ERRORCHECK)\n" << std::flush; |
std::cout << "Mutex Constructor: Fatal error - unable to pthread_mutexattr_settype(PTHREAD_MUTEX_ERRORCHECK)\n" << std::flush; |
48 |
exit(-1); |
exit(-1); |
49 |
} |
} |
50 |
|
#endif |
51 |
pthread_mutex_init(&__posix_mutex, &__posix_mutexattr); |
pthread_mutex_init(&__posix_mutex, &__posix_mutexattr); |
52 |
} |
} |
53 |
|
|