diff options
Diffstat (limited to 'src/mongo/util/alarm.cpp')
-rw-r--r-- | src/mongo/util/alarm.cpp | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/src/mongo/util/alarm.cpp b/src/mongo/util/alarm.cpp index b3236a9ef5b..95a3a88dfd3 100644 --- a/src/mongo/util/alarm.cpp +++ b/src/mongo/util/alarm.cpp @@ -50,7 +50,7 @@ public: return {ErrorCodes::ShutdownInProgress, "The alarm scheduler was shutdown"}; } - stdx::unique_lock<stdx::mutex> lk(service->_mutex); + stdx::unique_lock<Latch> lk(service->_mutex); if (_done) { return {ErrorCodes::AlarmAlreadyFulfilled, "The alarm has already been canceled"}; } @@ -80,7 +80,7 @@ AlarmSchedulerPrecise::~AlarmSchedulerPrecise() { } AlarmScheduler::Alarm AlarmSchedulerPrecise::alarmAt(Date_t date) { - stdx::unique_lock<stdx::mutex> lk(_mutex); + stdx::unique_lock<Latch> lk(_mutex); if (_shutdown) { Alarm ret; ret.future = Future<void>::makeReady( @@ -107,7 +107,7 @@ void AlarmSchedulerPrecise::processExpiredAlarms( std::vector<Promise<void>> toExpire; AlarmMapIt it; - stdx::unique_lock<stdx::mutex> lk(_mutex); + stdx::unique_lock<Latch> lk(_mutex); for (it = _alarms.begin(); it != _alarms.end();) { if (hook && !(*hook)(processed + 1)) { break; @@ -135,22 +135,22 @@ void AlarmSchedulerPrecise::processExpiredAlarms( } Date_t AlarmSchedulerPrecise::nextAlarm() { - stdx::lock_guard<stdx::mutex> lk(_mutex); + stdx::lock_guard<Latch> lk(_mutex); return (_alarms.empty()) ? Date_t::max() : _alarms.begin()->first; } void AlarmSchedulerPrecise::clearAllAlarms() { - stdx::unique_lock<stdx::mutex> lk(_mutex); + stdx::unique_lock<Latch> lk(_mutex); _clearAllAlarmsImpl(lk); } void AlarmSchedulerPrecise::clearAllAlarmsAndShutdown() { - stdx::unique_lock<stdx::mutex> lk(_mutex); + stdx::unique_lock<Latch> lk(_mutex); _shutdown = true; _clearAllAlarmsImpl(lk); } -void AlarmSchedulerPrecise::_clearAllAlarmsImpl(stdx::unique_lock<stdx::mutex>& lk) { +void AlarmSchedulerPrecise::_clearAllAlarmsImpl(stdx::unique_lock<Latch>& lk) { std::vector<Promise<void>> toExpire; for (AlarmMapIt it = _alarms.begin(); it != _alarms.end();) { toExpire.push_back(std::move(it->second.promise)); |