本文整理汇总了C++中stdx::unique_lock::owns_lock方法的典型用法代码示例。如果您正苦于以下问题:C++ unique_lock::owns_lock方法的具体用法?C++ unique_lock::owns_lock怎么用?C++ unique_lock::owns_lock使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类stdx::unique_lock
的用法示例。
在下文中一共展示了unique_lock::owns_lock方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: _processAlarms
void ClockSourceMock::_processAlarms(stdx::unique_lock<stdx::mutex> lk) {
using std::swap;
invariant(lk.owns_lock());
std::vector<Alarm> readyAlarms;
std::vector<Alarm>::iterator iter;
auto alarmIsNotExpired = [&](const Alarm& alarm) { return alarm.first > _now; };
auto expiredAlarmsBegin = std::partition(_alarms.begin(), _alarms.end(), alarmIsNotExpired);
std::move(expiredAlarmsBegin, _alarms.end(), std::back_inserter(readyAlarms));
_alarms.erase(expiredAlarmsBegin, _alarms.end());
lk.unlock();
for (const auto& alarm : readyAlarms) {
alarm.second();
}
}