/[svn]/linuxsampler/trunk/src/common/Mutex.cpp
ViewVC logotype

Diff of /linuxsampler/trunk/src/common/Mutex.cpp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 56 by schoenebeck, Tue Apr 27 09:21:58 2004 UTC revision 275 by schoenebeck, Sat Oct 9 15:40:35 2004 UTC
# Line 22  Line 22 
22    
23  #include <iostream>  #include <iostream>
24    
25    #include <errno.h>
26    
27  #include "Mutex.h"  #include "Mutex.h"
28    
29  Mutex::Mutex() {  Mutex::Mutex() {
30        // the following function call only works on UNIX98 compatible systems
31      if (pthread_mutexattr_settype(&__posix_mutexattr, PTHREAD_MUTEX_ERRORCHECK)) {      if (pthread_mutexattr_settype(&__posix_mutexattr, PTHREAD_MUTEX_ERRORCHECK)) {
32          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;
33          exit(-1);          exit(-1);
# Line 40  void Mutex::Lock() { Line 43  void Mutex::Lock() {
43      pthread_mutex_lock(&__posix_mutex);      pthread_mutex_lock(&__posix_mutex);
44  }  }
45    
46    bool Mutex::Trylock() {
47        if (pthread_mutex_trylock(&__posix_mutex) == EBUSY)
48                return false;
49        return true;
50    }
51    
52  void Mutex::Unlock() {  void Mutex::Unlock() {
53      pthread_mutex_unlock(&__posix_mutex);      pthread_mutex_unlock(&__posix_mutex);
54  }  }

Legend:
Removed from v.56  
changed lines
  Added in v.275

  ViewVC Help
Powered by ViewVC