@@ -282,15 +282,15 @@ pub(crate) struct AtomicStatistics {
282
282
impl AtomicStatistics {
283
283
pub ( crate ) fn record_get ( & self , kind : StatsGetKind , wait_time_start : Option < Instant > ) {
284
284
match kind {
285
- StatsGetKind :: Direct => self . get_direct . fetch_add ( 1 , Ordering :: SeqCst ) ,
286
- StatsGetKind :: Waited => self . get_waited . fetch_add ( 1 , Ordering :: SeqCst ) ,
287
- StatsGetKind :: TimedOut => self . get_timed_out . fetch_add ( 1 , Ordering :: SeqCst ) ,
285
+ StatsGetKind :: Direct => self . get_direct . fetch_add ( 1 , Ordering :: Relaxed ) ,
286
+ StatsGetKind :: Waited => self . get_waited . fetch_add ( 1 , Ordering :: Relaxed ) ,
287
+ StatsGetKind :: TimedOut => self . get_timed_out . fetch_add ( 1 , Ordering :: Relaxed ) ,
288
288
} ;
289
289
290
290
if let Some ( wait_time_start) = wait_time_start {
291
291
let wait_time = Instant :: now ( ) - wait_time_start;
292
292
self . get_wait_time_micros
293
- . fetch_add ( wait_time. as_micros ( ) as u64 , Ordering :: SeqCst ) ;
293
+ . fetch_add ( wait_time. as_micros ( ) as u64 , Ordering :: Relaxed ) ;
294
294
}
295
295
}
296
296
@@ -300,7 +300,7 @@ impl AtomicStatistics {
300
300
StatsKind :: ClosedBroken => & self . connections_closed_broken ,
301
301
StatsKind :: ClosedInvalid => & self . connections_closed_invalid ,
302
302
}
303
- . fetch_add ( 1 , Ordering :: SeqCst ) ;
303
+ . fetch_add ( 1 , Ordering :: Relaxed ) ;
304
304
}
305
305
306
306
pub ( crate ) fn record_connections_reaped (
@@ -309,28 +309,28 @@ impl AtomicStatistics {
309
309
closed_max_lifetime : u64 ,
310
310
) {
311
311
self . connections_closed_idle_timeout
312
- . fetch_add ( closed_idle_timeout, Ordering :: SeqCst ) ;
312
+ . fetch_add ( closed_idle_timeout, Ordering :: Relaxed ) ;
313
313
self . connections_closed_max_lifetime
314
- . fetch_add ( closed_max_lifetime, Ordering :: SeqCst ) ;
314
+ . fetch_add ( closed_max_lifetime, Ordering :: Relaxed ) ;
315
315
}
316
316
}
317
317
318
318
impl From < & AtomicStatistics > for Statistics {
319
319
fn from ( item : & AtomicStatistics ) -> Self {
320
320
Self {
321
- get_direct : item. get_direct . load ( Ordering :: SeqCst ) ,
322
- get_waited : item. get_waited . load ( Ordering :: SeqCst ) ,
323
- get_timed_out : item. get_timed_out . load ( Ordering :: SeqCst ) ,
324
- get_wait_time : Duration :: from_micros ( item. get_wait_time_micros . load ( Ordering :: SeqCst ) ) ,
325
- connections_created : item. connections_created . load ( Ordering :: SeqCst ) ,
326
- connections_closed_broken : item. connections_closed_broken . load ( Ordering :: SeqCst ) ,
327
- connections_closed_invalid : item. connections_closed_invalid . load ( Ordering :: SeqCst ) ,
321
+ get_direct : item. get_direct . load ( Ordering :: Relaxed ) ,
322
+ get_waited : item. get_waited . load ( Ordering :: Relaxed ) ,
323
+ get_timed_out : item. get_timed_out . load ( Ordering :: Relaxed ) ,
324
+ get_wait_time : Duration :: from_micros ( item. get_wait_time_micros . load ( Ordering :: Relaxed ) ) ,
325
+ connections_created : item. connections_created . load ( Ordering :: Relaxed ) ,
326
+ connections_closed_broken : item. connections_closed_broken . load ( Ordering :: Relaxed ) ,
327
+ connections_closed_invalid : item. connections_closed_invalid . load ( Ordering :: Relaxed ) ,
328
328
connections_closed_max_lifetime : item
329
329
. connections_closed_max_lifetime
330
- . load ( Ordering :: SeqCst ) ,
330
+ . load ( Ordering :: Relaxed ) ,
331
331
connections_closed_idle_timeout : item
332
332
. connections_closed_idle_timeout
333
- . load ( Ordering :: SeqCst ) ,
333
+ . load ( Ordering :: Relaxed ) ,
334
334
}
335
335
}
336
336
}
0 commit comments