mirror of
https://codeberg.org/YGGverse/psocks.git
synced 2026-04-01 08:55:27 +00:00
grand refactory to multiple list-based control api
This commit is contained in:
parent
827cb182f2
commit
b93c1e8481
15 changed files with 271 additions and 282 deletions
11
src/stats.rs
11
src/stats.rs
|
|
@ -6,29 +6,18 @@ pub use snap::Snap;
|
|||
|
||||
#[derive(Default)]
|
||||
pub struct Total {
|
||||
entries: AtomicU64,
|
||||
blocked: AtomicU64,
|
||||
request: AtomicU64,
|
||||
}
|
||||
|
||||
impl Total {
|
||||
pub fn with_rules(entries: u64) -> Self {
|
||||
Self {
|
||||
entries: entries.into(),
|
||||
..Self::default()
|
||||
}
|
||||
}
|
||||
pub fn snap(&self, seconds_from_startup: u64) -> Snap {
|
||||
Snap::shot(
|
||||
self.entries.load(Ordering::Relaxed),
|
||||
self.request.load(Ordering::Relaxed),
|
||||
self.blocked.load(Ordering::Relaxed),
|
||||
seconds_from_startup,
|
||||
)
|
||||
}
|
||||
pub fn set_entries(&self, value: u64) {
|
||||
self.entries.store(value, Ordering::Relaxed);
|
||||
}
|
||||
pub fn increase_blocked(&self) {
|
||||
self.blocked.fetch_add(1, Ordering::Relaxed);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue