From 5d7b83d63d1bc58ce3a40aaf7dfdadea39055191 Mon Sep 17 00:00:00 2001 From: zhangmeng <775834166@qq.com> Date: 星期三, 19 一月 2022 16:59:58 +0800 Subject: [PATCH] performance --- src/nng_wrap.cpp | 4 +++- src/common.h | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/common.h b/src/common.h index 947fea7..253d124 100644 --- a/src/common.h +++ b/src/common.h @@ -92,7 +92,7 @@ }; template <class T> using is_callable = typename is_callable_h<std::is_class<typename std::remove_reference<T>::type>::value, typename std::remove_reference<T>::type>::type; -static constexpr int timeout_req_rep = 5162; +static constexpr int timeout_req_rep = 6251; inline void remove_exist(const std::string& url){ if (url.find("ipc://") == 0){ diff --git a/src/nng_wrap.cpp b/src/nng_wrap.cpp index be364ee..c8fbaa3 100644 --- a/src/nng_wrap.cpp +++ b/src/nng_wrap.cpp @@ -523,11 +523,13 @@ constexpr int idle = 10; const auto data = rr_unblocking_msg_.data(); const auto data_size = rr_unblocking_msg_.size(); + constexpr int life_span = timeout_req_rep*10; + auto f = [rep]{ vector<struct work*> tmp{}; lock_guard<mutex> l{rep->mtx_msg_}; for(auto iter = rep->works_.begin(); iter != rep->works_.end();){ - if ((iter->second+=idle) > timeout_req_rep){ + if ((iter->second+=idle) > life_span){ tmp.push_back(iter->second.w_); iter = rep->works_.erase(iter); }else { -- Gitblit v1.8.0