summaryrefslogtreecommitdiff
path: root/src/Peer.cc
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2010-03-06 08:29:53 +0000
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2010-03-06 08:29:53 +0000
commit8d09b069e2b709d8657f5fdbcf2a933515545f39 (patch)
tree431bf39e4ce0a90c7fb4804297562c0c4c93c478 /src/Peer.cc
parent7637fd76a27d8a97cd32d7597d5afb3361fe0d28 (diff)
2010-03-06 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added Time global::wallclock to cache "current time" to reduce the call gettimeofday(). Global variables are now in namespace global. * src/AbstractCommand.cc * src/ActivePeerConnectionCommand.cc * src/AdaptiveURISelector.cc * src/BtLeecherStateChoke.cc * src/BtLeecherStateChoke.h * src/BtSeederStateChoke.cc * src/BtSeederStateChoke.h * src/BtStopDownloadCommand.cc * src/ConsoleStatCalc.cc * src/DHTBucket.cc * src/DHTGetPeersCommand.cc * src/DHTMessageTrackerEntry.cc * src/DHTNode.cc * src/DHTPeerAnnounceEntry.cc * src/DHTPeerAnnounceStorage.cc * src/DHTSetup.cc * src/DefaultBtAnnounce.cc * src/DefaultBtInteractive.cc * src/DefaultBtMessageDispatcher.cc * src/DefaultPeerStorage.cc * src/DefaultPieceStorage.cc * src/DownloadCommand.cc * src/DownloadEngine.cc * src/FileEntry.cc * src/HttpServerBodyCommand.cc * src/HttpServerCommand.cc * src/HttpServerResponseCommand.cc * src/LpdMessageDispatcher.cc * src/MultiUrlRequestInfo.cc * src/Peer.cc * src/Peer.h * src/PeerAbstractCommand.cc * src/PeerStat.h * src/RequestSlot.cc * src/RequestSlot.h * src/SegmentMan.cc * src/ServerStatMan.cc * src/SleepCommand.cc * src/SpeedCalc.cc * src/SpeedCalc.h * src/TimeA2.cc * src/TimeA2.h * src/TimeBasedCommand.cc * src/TimeSeedCriteria.h * src/UTMetadataRequestTracker.h * src/UTPexExtensionMessage.cc * src/wallclock.h
Diffstat (limited to 'src/Peer.cc')
-rw-r--r--src/Peer.cc18
1 files changed, 4 insertions, 14 deletions
diff --git a/src/Peer.cc b/src/Peer.cc
index da12a222..61ab9195 100644
--- a/src/Peer.cc
+++ b/src/Peer.cc
@@ -41,6 +41,7 @@
#include "a2functional.h"
#include "PeerSessionResource.h"
#include "BtMessageDispatcher.h"
+#include "wallclock.h"
namespace aria2 {
@@ -215,24 +216,12 @@ unsigned int Peer::calculateUploadSpeed()
return _res->getPeerStat().calculateUploadSpeed();
}
-unsigned int Peer::calculateUploadSpeed(const struct timeval& now)
-{
- assert(_res);
- return _res->getPeerStat().calculateUploadSpeed(now);
-}
-
unsigned int Peer::calculateDownloadSpeed()
{
assert(_res);
return _res->getPeerStat().calculateDownloadSpeed();
}
-unsigned int Peer::calculateDownloadSpeed(const struct timeval& now)
-{
- assert(_res);
- return _res->getPeerStat().calculateDownloadSpeed(now);
-}
-
uint64_t Peer::getSessionUploadLength() const
{
assert(_res);
@@ -330,12 +319,13 @@ void Peer::setAllBitfield() {
void Peer::startBadCondition()
{
- _badConditionStartTime.reset();
+ _badConditionStartTime = global::wallclock;
}
bool Peer::isGood() const
{
- return _badConditionStartTime.elapsed(BAD_CONDITION_INTERVAL);
+ return _badConditionStartTime.
+ difference(global::wallclock) >= BAD_CONDITION_INTERVAL;
}
uint8_t Peer::getExtensionMessageID(const std::string& name) const