« first day (2753 days earlier)      last day (1031 days later) » 

7:05 PM
Tem como testar cadeados feitos com mutex?

Por exemplo, esse em VC++.

class RwMutex {
std::mutex rcm , wm ;
unsigned int rc ;
public:
__inline RwMutex( void ): rcm() , wm() , rc(0) {}
__inline void reader_lock( void ){
rcm.lock() ;
if( ++rc-1 == 0 ) wm.lock() ;
rcm.unlock() ;
}
__inline void reader_unlock( void ){
rcm.lock() ;
if( --rc == 0 ) wm.unlock() ;
rcm.unlock() ;
}
__forceinline void writer_lock( void ){
wm.lock() ;
}
__forceinline void writer_unlock( void ){
wm.unlock() ;
}
} ;

Dá para saber se ele possibilita deadlock? Se ele corretamente usado realmente impede escritas simultâ
 
 
4 hours later…
11:28 PM
boa noite
 

« first day (2753 days earlier)      last day (1031 days later) »