| 
				
				
					
				
				
				 | 
			
			 | 
			@@ -29,18 +29,18 @@ struct SharedMutex { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    SharedMutex() noexcept { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        pthread_mutexattr_t attr; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        pthread_mutexattr_init(&attr); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        pthread_mutexattr_setprotocol(&attr, PTHREAD_PRIO_INHERIT); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        pthread_mutex_init(&readLock, &attr); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        pthread_mutexattr_destroy(&attr); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        pthread_mutexattr_init(&attr); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        pthread_mutexattr_setprotocol(&attr, PTHREAD_PRIO_INHERIT); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_NORMAL); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        pthread_mutex_init(&writeLock, &attr); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        pthread_mutexattr_destroy(&attr); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        pthread_mutexattr_t attr2; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        pthread_mutexattr_init(&attr2); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        pthread_mutexattr_setprotocol(&attr2, PTHREAD_PRIO_NONE); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        pthread_mutexattr_settype(&attr2, PTHREAD_MUTEX_NORMAL); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        pthread_mutex_init(&writeLock, &attr2); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        pthread_mutexattr_destroy(&attr2); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    } | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    ~SharedMutex() noexcept { | 
		
		
	
	
		
			
				| 
				
					
				
				
				
				 | 
			
			 | 
			
  |