From 3742893c1918d7c9bc3f340f254895f406d8d8b3 Mon Sep 17 00:00:00 2001 From: neon_arch Date: Wed, 8 Nov 2023 19:09:50 +0300 Subject: [PATCH] =?UTF-8?q?=E2=99=BB=EF=B8=8F=20=20refactor:=20reimplement?= =?UTF-8?q?=20the=20random=20delay=20code=20without=20the=20rand=20crate?= =?UTF-8?q?=20(#380)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/results/aggregator.rs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/results/aggregator.rs b/src/results/aggregator.rs index 18fdb92..b57768f 100644 --- a/src/results/aggregator.rs +++ b/src/results/aggregator.rs @@ -8,8 +8,8 @@ use crate::models::{ engine_models::{EngineError, EngineHandler}, }; use error_stack::Report; -use rand::Rng; use regex::Regex; +use std::time::{SystemTime, UNIX_EPOCH}; use std::{ collections::HashMap, io::{BufReader, Read}, @@ -72,9 +72,9 @@ pub async fn aggregate( // Add a random delay before making the request. if random_delay || !debug { - let mut rng = rand::thread_rng(); - let delay_secs = rng.gen_range(1..10); - tokio::time::sleep(Duration::from_secs(delay_secs)).await; + let nanos = SystemTime::now().duration_since(UNIX_EPOCH)?.subsec_nanos() as f32; + let delay = ((nanos / 1_0000_0000 as f32).floor() as u64) + 1; + tokio::time::sleep(Duration::from_secs(delay)).await; } let mut names: Vec<&str> = Vec::with_capacity(0);