Add timing
This commit is contained in:
rodzic
d93d0b49a5
commit
82697b7629
@ -1,6 +1,6 @@
|
||||
use std::io::Write;
|
||||
use std::net::*;
|
||||
use std::time::Duration;
|
||||
use std::time::{Duration, Instant};
|
||||
use std::thread;
|
||||
use std::time;
|
||||
use clap::{Arg, App};
|
||||
@ -194,7 +194,6 @@ fn sleep(micros: u64, cmt: &'static str) {
|
||||
}
|
||||
|
||||
fn sleep_no_comment(micros: u64) {
|
||||
println!("micros {}", micros);
|
||||
if micros > 0 {
|
||||
let dur_micros = time::Duration::from_micros(micros);
|
||||
thread::sleep(dur_micros);
|
||||
@ -257,12 +256,14 @@ fn main() -> std::io::Result<()> {
|
||||
|
||||
// Start a thread which sends CH
|
||||
let mut threads = Vec::new();
|
||||
// report every 1000 msgs sent
|
||||
let msg_nb_report = 1000;
|
||||
for _ in 0..sending_threads {
|
||||
// Condition variables to control threads
|
||||
let t = thread::spawn(move || {
|
||||
// calculates number of sent client hellos
|
||||
let mut ch_sent = 0;
|
||||
|
||||
let mut now = Instant::now();
|
||||
loop {
|
||||
// try connect
|
||||
let sock = TcpStream::connect_timeout(&sock_addr, dur);
|
||||
@ -281,8 +282,13 @@ fn main() -> std::io::Result<()> {
|
||||
s.shutdown(Shutdown::Both).expect("shutdown call failed");
|
||||
sleep_no_comment(1000000/msg_per_sec as u64);
|
||||
ch_sent += 1;
|
||||
if ch_sent % 100 == 0 {
|
||||
println!("nb of queries sent: {}", ch_sent);
|
||||
if ch_sent % msg_nb_report == 0 {
|
||||
println!("nb of queries sent: total: {}. {1} msg's in {2} sec. {3} per sec",
|
||||
ch_sent,
|
||||
msg_nb_report,
|
||||
now.elapsed().as_millis() as f64/1000 as f64,
|
||||
((msg_nb_report as f64 / now.elapsed().as_millis() as f64) * 1000 as f64) as i64);
|
||||
now = Instant::now();
|
||||
}
|
||||
}
|
||||
});
|
||||
|
Ładowanie…
Reference in New Issue
Block a user