MCPcopy Create free account
hub / github.com/FirebirdSQL/firebird / lock_shared

Method lock_shared

extern/boost/boost/thread/v2/shared_mutex.hpp:350–357  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

348 // Shared ownership
349
350 inline void shared_mutex::lock_shared()
351 {
352 boost::unique_lock<mutex_t> lk(mut_);
353 gate1_.wait(lk, boost::bind(&shared_mutex::no_writer_no_max_readers, boost::ref(*this)));
354 count_t num_readers = (state_ & n_readers_) + 1;
355 state_ &= ~n_readers_;
356 state_ |= num_readers;
357 }
358
359 inline bool shared_mutex::try_lock_shared()
360 {

Callers 2

shared_lock_guardMethod · 0.45
lockFunction · 0.45

Calls 3

bindClass · 0.50
refFunction · 0.50
waitMethod · 0.45

Tested by

no test coverage detected