Session::PriorityQueue: minor simplification

GitOrigin-RevId: f0baab28bb95afef247e4ad0c291222be6d105c5
This commit is contained in:
Arseny Smirnov 2020-08-18 18:37:10 +03:00
parent c1252ad929
commit 89fad4fdb9
2 changed files with 5 additions and 4 deletions

View File

@ -123,11 +123,11 @@ void Session::PriorityQueue::push(NetQueryPtr query) {
}
NetQueryPtr Session::PriorityQueue::pop() {
auto it = queries_.rbegin();
CHECK(it != queries_.rend());
CHECK(!empty());
auto it = queries_.begin();
auto res = it->second.pop();
if (it->second.empty()) {
queries_.erase(it->first);
queries_.erase(it);
}
return res;
}

View File

@ -29,6 +29,7 @@
#include <array>
#include <deque>
#include <functional>
#include <map>
#include <memory>
#include <unordered_map>
@ -132,7 +133,7 @@ class Session final
bool empty() const;
private:
std::map<int8, VectorQueue<NetQueryPtr>> queries_;
std::map<int8, VectorQueue<NetQueryPtr>, std::greater<>> queries_;
};
PriorityQueue pending_queries_;
std::map<uint64, Query> sent_queries_;