| 487 | } |
| 488 | |
| 489 | void DBManager::RunFrame() |
| 490 | { |
| 491 | /* Don't bother if we're empty */ |
| 492 | if (!m_ThinkQueue.size()) |
| 493 | { |
| 494 | return; |
| 495 | } |
| 496 | |
| 497 | /* Dump one thing per-frame so the server stays sane. */ |
| 498 | IDBThreadOperation *op; |
| 499 | { |
| 500 | std::lock_guard<std::mutex> lock(m_ThinkLock); |
| 501 | op = m_ThinkQueue.first(); |
| 502 | m_ThinkQueue.pop(); |
| 503 | } |
| 504 | op->RunThinkPart(); |
| 505 | op->Destroy(); |
| 506 | } |
| 507 | |
| 508 | void DBManager::OnSourceModIdentityDropped(IdentityToken_t *pToken) |
| 509 | { |
no test coverage detected