Compare commits

..

2 Commits

Author SHA1 Message Date
716b91dd52
code: impl Iterator for LinkSpeed and use it 2025-02-10 17:36:08 +01:00
5102267e7f
build: remove edition 2024 stuff 2025-02-10 17:35:40 +01:00
3 changed files with 11 additions and 8 deletions

View File

@ -1,8 +1,6 @@
[package]
name = "linkspeed"
version = "0.1.0"
edition = "2024"
rust-version = "1.85"
[dependencies]

View File

@ -1,2 +0,0 @@
[toolchain]
channel = "nightly"

View File

@ -68,18 +68,25 @@ impl LinkSpeed {
}
}
impl Iterator for LinkSpeed {
type Item = (f64, f64);
fn next(&mut self) -> Option<Self::Item> {
Some(self.get_measurement())
}
}
fn main() {
let netdev_name = env::args().nth(1).expect("No network device provided");
let mut link_speed = LinkSpeed::new(netdev_name).expect("Failed to create LinkSpeed object");
let link_speed = LinkSpeed::new(netdev_name).expect("Failed to create LinkSpeed object");
loop {
let (rx_speed, tx_speed) = link_speed.get_measurement();
link_speed.for_each(|(rx_speed, tx_speed)| {
println!(
"RX: {:.0} MBit/s, TX: {:.0} MBit/s",
rx_speed / 1024.0 / 1024.0 * 8.0,
tx_speed / 1024.0 / 1024.0 * 8.0
);
sleep(Duration::from_millis(1000));
}
});
}