コード例 #1
0
ファイル: connection_pool.cpp プロジェクト: yaojiashu/mongo
void ConnectionPool::_cleanUpStaleHosts_inlock(Date_t now) {
    if (now > _lastCleanUpTime + kCleanUpInterval) {
        for (HostLastUsedMap::iterator itr = _lastUsedHosts.begin(); itr != _lastUsedHosts.end();
             itr++) {
            if (itr->second <= _lastCleanUpTime) {
                ConnectionList connList = _connections.find(itr->first)->second;
                _cleanUpOlderThan_inlock(now, &connList);
                invariant(connList.empty());
                itr->second = kNeverTooStale;
            }
        }

        _lastCleanUpTime = now;
    }
}