summaryrefslogtreecommitdiff
path: root/qpid/cpp/src/tests/qpid-receive.cpp
diff options
context:
space:
mode:
authorAlan Conway <aconway@apache.org>2010-11-10 21:50:20 +0000
committerAlan Conway <aconway@apache.org>2010-11-10 21:50:20 +0000
commit68c6150ada444683074e45d0738784d60aa03bce (patch)
treef0ac3ad605977b9312abac2dc3310e55d41f29ff /qpid/cpp/src/tests/qpid-receive.cpp
parenta9bcb605800611dc28c6131564f9cdcca98aaa98 (diff)
downloadqpid-python-68c6150ada444683074e45d0738784d60aa03bce.tar.gz
qpid-recieve --receive-rate: fixed calculation for duplicate messages.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1033739 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/cpp/src/tests/qpid-receive.cpp')
-rw-r--r--qpid/cpp/src/tests/qpid-receive.cpp7
1 files changed, 3 insertions, 4 deletions
diff --git a/qpid/cpp/src/tests/qpid-receive.cpp b/qpid/cpp/src/tests/qpid-receive.cpp
index 823756268c..a85d882a0f 100644
--- a/qpid/cpp/src/tests/qpid-receive.cpp
+++ b/qpid/cpp/src/tests/qpid-receive.cpp
@@ -185,14 +185,13 @@ int main(int argc, char ** argv)
Reporter<ThroughputAndLatency> reporter(std::cout, opts.reportEvery, opts.reportHeader);
if (!opts.readyAddress.empty())
session.createSender(opts.readyAddress).send(msg);
-
- uint received = 0;
+
+ // For receive rate calculation
qpid::sys::AbsTime start = qpid::sys::now();
int64_t interval = 0;
if (opts.receiveRate) interval = qpid::sys::TIME_SEC/opts.receiveRate;
while (!done && receiver.fetch(msg, timeout)) {
- ++received;
reporter.message(msg);
if (!opts.ignoreDuplicates || !sequenceTracker.isDuplicate(msg)) {
if (msg.getContent() == EOS) {
@@ -225,7 +224,7 @@ int main(int argc, char ** argv)
session.acknowledge();
}
if (opts.receiveRate) {
- qpid::sys::AbsTime waitTill(start, received*interval);
+ qpid::sys::AbsTime waitTill(start, count*interval);
int64_t delay = qpid::sys::Duration(qpid::sys::now(), waitTill);
if (delay > 0) qpid::sys::usleep(delay/qpid::sys::TIME_USEC);
}