From 587096f76fdfed63fb55af23cb1c245c217ebdfa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Joakim=20Frosteg=C3=A5rd?= Date: Sun, 12 Apr 2020 21:46:48 +0200 Subject: [PATCH] aquatic: give threads names when spawning them --- aquatic/src/lib/lib.rs | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/aquatic/src/lib/lib.rs b/aquatic/src/lib/lib.rs index 7520203..a1d13b8 100644 --- a/aquatic/src/lib/lib.rs +++ b/aquatic/src/lib/lib.rs @@ -1,4 +1,5 @@ use std::time::Duration; +use std::thread::Builder; use crossbeam_channel::unbounded; @@ -18,20 +19,20 @@ pub fn run(config: Config){ let (request_sender, request_receiver) = unbounded(); let (response_sender, response_receiver) = unbounded(); - for _ in 0..config.request_workers { + for i in 0..config.request_workers { let state = state.clone(); let config = config.clone(); let request_receiver = request_receiver.clone(); let response_sender = response_sender.clone(); - ::std::thread::spawn(move || { + Builder::new().name(format!("request-worker-{}", i + 1)).spawn(move || handlers::run_request_worker( state, config, request_receiver, response_sender - ); - }); + ) + ).expect("spawn request worker"); } for i in 0..config.socket_workers { @@ -40,22 +41,22 @@ pub fn run(config: Config){ let request_sender = request_sender.clone(); let response_receiver = response_receiver.clone(); - ::std::thread::spawn(move || { + Builder::new().name(format!("socket-worker-{}", i + 1)).spawn(move || network::run_socket_worker( state, config, i, request_sender, response_receiver - ); - }); + ) + ).expect("spawn socket worker"); } if config.statistics.interval != 0 { let state = state.clone(); let config = config.clone(); - ::std::thread::spawn(move || { + Builder::new().name("statistics-collector".to_string()).spawn(move || loop { ::std::thread::sleep(Duration::from_secs( config.statistics.interval @@ -63,7 +64,7 @@ pub fn run(config: Config){ tasks::gather_and_print_statistics(&state, &config); } - }); + ).expect("spawn statistics thread"); } loop {