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

Method beginWrite

src/common/classes/rwlock.h:158–170  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

156 }
157 }
158 void beginWrite(const char* aReason)
159 {
160 if (!tryBeginWrite(aReason))
161 {
162 ++blockedWriters;
163 while (!tryBeginWrite(aReason))
164 {
165 if (WaitForSingleObject(writers_event, INFINITE) != WAIT_OBJECT_0)
166 system_call_failed::raise("WaitForSingleObject");
167 }
168 --blockedWriters;
169 }
170 }
171 void endRead()
172 {
173 if (--lock == 0)

Callers 4

LocalAllocGuardMethod · 0.80
StateWriteGuardMethod · 0.80
FileExtendLockGuardMethod · 0.80
WriteLockGuardMethod · 0.80

Calls 1

raiseFunction · 0.85

Tested by

no test coverage detected