summaryrefslogtreecommitdiff
path: root/src/DefaultBtInteractive.cc
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2011-08-10 01:17:28 +0900
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2011-08-10 01:17:28 +0900
commite8e3a6f259ab74c486aec9b5ea95d3e1f5068f6c (patch)
tree81530df222473d79cf39e007729b0d882441ebfb /src/DefaultBtInteractive.cc
parent97f34ab6682d83d9a0265a4291b44eaf45703493 (diff)
wallclock is now retrieved using global::wallclock() call.
This is necessary to avoid global variable initialization order problem.
Diffstat (limited to 'src/DefaultBtInteractive.cc')
-rw-r--r--src/DefaultBtInteractive.cc42
1 files changed, 21 insertions, 21 deletions
diff --git a/src/DefaultBtInteractive.cc b/src/DefaultBtInteractive.cc
index a4017e8c..b70bb330 100644
--- a/src/DefaultBtInteractive.cc
+++ b/src/DefaultBtInteractive.cc
@@ -84,12 +84,12 @@ DefaultBtInteractive::DefaultBtInteractive
metadataGetMode_(false),
localNode_(0),
allowedFastSetSize_(10),
- haveTimer_(global::wallclock),
- keepAliveTimer_(global::wallclock),
- floodingTimer_(global::wallclock),
- inactiveTimer_(global::wallclock),
- pexTimer_(global::wallclock),
- perSecTimer_(global::wallclock),
+ haveTimer_(global::wallclock()),
+ keepAliveTimer_(global::wallclock()),
+ floodingTimer_(global::wallclock()),
+ inactiveTimer_(global::wallclock()),
+ pexTimer_(global::wallclock()),
+ perSecTimer_(global::wallclock()),
keepAliveInterval_(120),
utPexEnabled_(false),
dhtEnabled_(false),
@@ -161,8 +161,8 @@ BtMessageHandle DefaultBtInteractive::receiveAndSendHandshake() {
void DefaultBtInteractive::doPostHandshakeProcessing() {
// Set time 0 to haveTimer to cache http/ftp download piece completion
haveTimer_.reset(0);
- keepAliveTimer_ = global::wallclock;
- floodingTimer_ = global::wallclock;
+ keepAliveTimer_ = global::wallclock();
+ floodingTimer_ = global::wallclock();
pexTimer_.reset(0);
if(peer_->isExtendedMessagingEnabled()) {
addHandshakeExtendedMessageToQueue();
@@ -247,7 +247,7 @@ void DefaultBtInteractive::decideChoking() {
void DefaultBtInteractive::checkHave() {
std::vector<size_t> indexes;
pieceStorage_->getAdvertisedPieceIndexes(indexes, cuid_, haveTimer_);
- haveTimer_ = global::wallclock;
+ haveTimer_ = global::wallclock();
if(indexes.size() >= 20) {
if(peer_->isFastExtensionEnabled() &&
pieceStorage_->allDownloadFinished()) {
@@ -264,10 +264,10 @@ void DefaultBtInteractive::checkHave() {
}
void DefaultBtInteractive::sendKeepAlive() {
- if(keepAliveTimer_.difference(global::wallclock) >= keepAliveInterval_) {
+ if(keepAliveTimer_.difference(global::wallclock()) >= keepAliveInterval_) {
dispatcher_->addMessageToQueue(messageFactory_->createKeepAliveMessage());
dispatcher_->sendMessages();
- keepAliveTimer_ = global::wallclock;
+ keepAliveTimer_ = global::wallclock();
}
}
@@ -308,7 +308,7 @@ size_t DefaultBtInteractive::receiveMessages() {
peerStorage_->updateTransferStatFor(peer_);
// pass through
case BtRequestMessage::ID:
- inactiveTimer_ = global::wallclock;
+ inactiveTimer_ = global::wallclock();
break;
}
}
@@ -422,20 +422,20 @@ void DefaultBtInteractive::sendPendingMessage() {
void DefaultBtInteractive::detectMessageFlooding() {
if(floodingTimer_.
- difference(global::wallclock) >= FLOODING_CHECK_INTERVAL) {
+ difference(global::wallclock()) >= FLOODING_CHECK_INTERVAL) {
if(floodingStat_.getChokeUnchokeCount() >= 2 ||
floodingStat_.getKeepAliveCount() >= 2) {
throw DL_ABORT_EX(EX_FLOODING_DETECTED);
} else {
floodingStat_.reset();
}
- floodingTimer_ = global::wallclock;
+ floodingTimer_ = global::wallclock();
}
}
void DefaultBtInteractive::checkActiveInteraction()
{
- time_t inactiveTime = inactiveTimer_.difference(global::wallclock);
+ time_t inactiveTime = inactiveTimer_.difference(global::wallclock());
// To allow aria2 to accept mutially interested peer, disconnect unintersted
// peer.
{
@@ -471,7 +471,7 @@ void DefaultBtInteractive::checkActiveInteraction()
void DefaultBtInteractive::addPeerExchangeMessage()
{
if(pexTimer_.
- difference(global::wallclock) >= UTPexExtensionMessage::DEFAULT_INTERVAL) {
+ difference(global::wallclock()) >= UTPexExtensionMessage::DEFAULT_INTERVAL) {
UTPexExtensionMessageHandle m
(new UTPexExtensionMessage(peer_->getExtensionMessageID("ut_pex")));
@@ -497,7 +497,7 @@ void DefaultBtInteractive::addPeerExchangeMessage()
BtMessageHandle msg = messageFactory_->createBtExtendedMessage(m);
dispatcher_->addMessageToQueue(msg);
- pexTimer_ = global::wallclock;
+ pexTimer_ = global::wallclock();
}
}
@@ -517,8 +517,8 @@ void DefaultBtInteractive::doInteractionProcessing() {
utMetadataRequestFactory_->create(requests, num, pieceStorage_);
dispatcher_->addMessageToQueue(requests);
}
- if(perSecTimer_.difference(global::wallclock) >= 1) {
- perSecTimer_ = global::wallclock;
+ if(perSecTimer_.difference(global::wallclock()) >= 1) {
+ perSecTimer_ = global::wallclock();
// Drop timeout request after queuing message to give a chance
// to other connection to request piece.
std::vector<size_t> indexes =
@@ -537,8 +537,8 @@ void DefaultBtInteractive::doInteractionProcessing() {
checkActiveInteraction();
decideChoking();
detectMessageFlooding();
- if(perSecTimer_.difference(global::wallclock) >= 1) {
- perSecTimer_ = global::wallclock;
+ if(perSecTimer_.difference(global::wallclock()) >= 1) {
+ perSecTimer_ = global::wallclock();
dispatcher_->checkRequestSlotAndDoNecessaryThing();
}
checkHave();