]> git.sesse.net Git - jam/commitdiff
Print out the statistics, and fix a stats bug.
authorsgunderson@bigfoot.com <>
Wed, 31 Jan 2007 22:47:43 +0000 (23:47 +0100)
committersgunderson@bigfoot.com <>
Wed, 31 Jan 2007 22:47:43 +0000 (23:47 +0100)
jam.c

diff --git a/jam.c b/jam.c
index 7e46c21a48b5e50313d122eba00d0dfb7916197e..1b6aaed6cf7625462f638d86eaa9430a5212b585 100644 (file)
--- a/jam.c
+++ b/jam.c
@@ -217,11 +217,13 @@ void *receiver_worker(void *arg)
                if (ret == 0)
                        break;
 
+               bytes_received += ret;
+
                // update the central counter after every 1MB (8ms
                // at gigabit speeds, should be enough) of received data
                if (bytes_received > 1048576) {
                        pthread_mutex_lock(&receive_mutex);
-                       total_bytes_sent += bytes_received;
+                       total_bytes_received += bytes_received;
                        pthread_mutex_unlock(&receive_mutex);
 
                        bytes_received = 0;
@@ -372,7 +374,22 @@ int main(int argc, char **argv)
                }
        }
 
-       sleep(3600);
+       // Just stay around collecting statistics until we're done.
+       for ( ;; ) {
+               unsigned long long sent, received;
+
+               pthread_mutex_lock(&send_mutex);
+               sent = total_bytes_sent;
+               pthread_mutex_unlock(&send_mutex);
+               
+               pthread_mutex_lock(&receive_mutex);
+               received = total_bytes_received;
+               pthread_mutex_unlock(&receive_mutex);
+
+               printf("%llu %llu\n", sent, received);
+
+               sleep(1);
+       }
 
        exit(0);
 }