feat(pinger): Configurable tick interval
This commit is contained in:
2 files changed
+3
-2
No files matched your search
+1
-1
@@ -139,7 +139,7 @@ fn main() -> anyhow::Result<()> {
|
|||||||
let reflector_peers_lock_clone = reflector_peers_lock.clone();
|
let reflector_peers_lock_clone = reflector_peers_lock.clone();
|
||||||
let sender_handle = thread::Builder::new().name("sender".to_string()).spawn(
|
let sender_handle = thread::Builder::new().name("sender".to_string()).spawn(
|
||||||
move || -> anyhow::Result<()> {
|
move || -> anyhow::Result<()> {
|
||||||
pinger_sender.send(id, config.measurement_type, reflector_peers_lock_clone)
|
pinger_sender.send(id, config.measurement_type, reflector_peers_lock_clone, config.tick_interval)
|
||||||
},
|
},
|
||||||
)?;
|
)?;
|
||||||
|
|
||||||
|
|||||||
+2
-1
@@ -91,11 +91,12 @@ pub trait PingSender {
|
|||||||
id: u16,
|
id: u16,
|
||||||
type_: MeasurementType,
|
type_: MeasurementType,
|
||||||
reflectors_lock: Arc<RwLock<Vec<IpAddr>>>,
|
reflectors_lock: Arc<RwLock<Vec<IpAddr>>>,
|
||||||
|
tick_interval: f64,
|
||||||
) -> anyhow::Result<()> {
|
) -> anyhow::Result<()> {
|
||||||
let mut socket = open_socket(type_)?;
|
let mut socket = open_socket(type_)?;
|
||||||
|
|
||||||
let mut seq: u16 = 0;
|
let mut seq: u16 = 0;
|
||||||
let tick_duration_ms: u16 = 500;
|
let tick_duration_ms: u16 = (tick_interval * 1000.0) as u16;
|
||||||
|
|
||||||
loop {
|
loop {
|
||||||
let reflectors_unlocked = reflectors_lock.read().unwrap();
|
let reflectors_unlocked = reflectors_lock.read().unwrap();
|
||||||
|
|||||||
Reference in new issue
Block a user