aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGavin Andresen <gavinandresen@gmail.com>2011-10-05 07:22:52 -0700
committerGavin Andresen <gavinandresen@gmail.com>2011-10-05 07:22:52 -0700
commit9ec4fa7b50e6389cab5792acd4210397c77f9f44 (patch)
treebe8357af320f1c2d3c413ffdce5c640f01a73914
parent3552497ae52b78f799be3d34d7a874d610ee6e71 (diff)
parenta4e6ae101a02d6dfd981eab374336b78199895b2 (diff)
Merge pull request #561 from luke-jr/optimize_conn_adjtime
Only GetAdjustedTime once for the retry loop
-rw-r--r--src/net.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/net.cpp b/src/net.cpp
index 1792bf78a0..b1069132ce 100644
--- a/src/net.cpp
+++ b/src/net.cpp
@@ -1438,6 +1438,8 @@ void ThreadOpenConnections2(void* parg)
BOOST_FOREACH(CNode* pnode, vNodes)
setConnected.insert(pnode->addr.ip & 0x0000ffff);
+ int64 nANow = GetAdjustedTime();
+
CRITICAL_BLOCK(cs_mapAddresses)
{
BOOST_FOREACH(const PAIRTYPE(vector<unsigned char>, CAddress)& item, mapAddresses)
@@ -1445,8 +1447,8 @@ void ThreadOpenConnections2(void* parg)
const CAddress& addr = item.second;
if (!addr.IsIPv4() || !addr.IsValid() || setConnected.count(addr.ip & 0x0000ffff))
continue;
- int64 nSinceLastSeen = GetAdjustedTime() - addr.nTime;
- int64 nSinceLastTry = GetAdjustedTime() - addr.nLastTry;
+ int64 nSinceLastSeen = nANow - addr.nTime;
+ int64 nSinceLastTry = nANow - addr.nLastTry;
// Randomize the order in a deterministic way, putting the standard port first
int64 nRandomizer = (uint64)(nStart * 4951 + addr.nLastTry * 9567851 + addr.ip * 7789) % (2 * 60 * 60);