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

Method cleanup

src/yvalve/MasterImplementation.cpp:194–218  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

192InitMutex<TimerEntry> timerHolder("TimerHolder");
193
194void TimerEntry::cleanup()
195{
196 {
197 MutexLockGuard guard(timerAccess, FB_FUNCTION);
198
199 stopTimerThread.setValue(1);
200 timerWakeup->release();
201 }
202
203 timerCleanup->tryEnter(5);
204 timerThread.waitForCompletion();
205
206 while (timerQueue->hasData())
207 {
208 ITimer* timer = NULL;
209 {
210 MutexLockGuard guard(timerAccess, FB_FUNCTION);
211
212 TimerEntry* e = timerQueue->end();
213 timer = (--e)->timer;
214 timerQueue->remove(e);
215 }
216 timer->release();
217 }
218}
219
220ISC_UINT64 curTime()
221{

Callers 1

shutdownTimersFunction · 0.45

Calls 7

setValueMethod · 0.45
releaseMethod · 0.45
tryEnterMethod · 0.45
waitForCompletionMethod · 0.45
hasDataMethod · 0.45
endMethod · 0.45
removeMethod · 0.45

Tested by

no test coverage detected