fastcgi-client 0.3.0

Fastcgi client implemented for Rust.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
use std::sync::atomic::{AtomicU16, Ordering};

static COUNTER: AtomicU16 = AtomicU16::new(1);

pub(crate) struct RequestIdGenerator;

impl RequestIdGenerator {
    pub(crate) fn generate(&self) -> u16 {
        COUNTER.fetch_add(1, Ordering::SeqCst)
    }
}

impl Drop for RequestIdGenerator {
    fn drop(&mut self) {
        COUNTER.fetch_sub(1, Ordering::SeqCst);
    }
}