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

Method lock

src/jrd/trace/TraceLog.cpp:324–342  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

322}
323
324void TraceLog::lock()
325{
326 m_sharedMemory->mutexLock();
327
328 TraceLogHeader* header = m_sharedMemory->getHeader();
329
330 if (header->allocated != m_sharedMemory->sh_mem_length_mapped)
331 {
332 LocalStatus ls;
333 CheckStatusWrapper s(&ls);
334
335 if (!m_sharedMemory->remapFile(&s, header->allocated, false))
336 status_exception::raise(&s);
337
338 header = m_sharedMemory->getHeader();
339
340 fb_assert(header->allocated == m_sharedMemory->sh_mem_length_mapped);
341 }
342}
343
344void TraceLog::unlock()
345{

Callers 1

TraceLogGuardMethod · 0.45

Calls 4

raiseFunction · 0.85
mutexLockMethod · 0.80
remapFileMethod · 0.80
getHeaderMethod · 0.45

Tested by

no test coverage detected