6个版本 (3个破坏性更新)

0.4.1 2021年3月9日
0.3.1 2021年3月9日
0.2.1 2019年10月1日
0.2.0 2018年7月12日
0.1.1 2018年5月14日

#825数据库接口

Download history 3448/week @ 2024-03-24 1094/week @ 2024-03-31 1498/week @ 2024-04-07 796/week @ 2024-04-14 807/week @ 2024-04-21 694/week @ 2024-04-28 496/week @ 2024-05-05 400/week @ 2024-05-12 463/week @ 2024-05-19 394/week @ 2024-05-26 562/week @ 2024-06-02 773/week @ 2024-06-09 460/week @ 2024-06-16 451/week @ 2024-06-23 359/week @ 2024-06-30 572/week @ 2024-07-07

每月1,872 次下载
4 个Crates中使用(通过 wasm-rgame

MIT 许可证

20KB
410

raii-counter

raii-counter 是一个RAII计数器的Rust类型(计算保持实例的数量,在Drop时减少计数),使用Arc<AtomicUsize>实现。

可用于跟踪句柄的持有者数量,跟踪正在进行的交易数量等。

附加功能

  • 计数器可以有大小,例如,具有size 4的计数器会将计数增加4,并在丢弃时减去4。

演示

extern crate raii_counter;
use raii_counter::Counter;

let counter = Counter::new();
assert_eq!(counter.count(), 1);

let weak = counter.downgrade();
assert_eq!(weak.count(), 0);

{
    let _counter1 = weak.spawn_upgrade();
    assert_eq!(weak.count(), 1);
    let _counter2 = weak.spawn_upgrade();
    assert_eq!(weak.count(), 2);
}

assert_eq!(weak.count(), 0);

许可证:MIT


lib.rs:

raii-counter 是一个RAII计数器的Rust类型(计算保持实例的数量,在Drop时减少计数),使用Arc<AtomicUsize>实现。

可用于跟踪句柄的持有者数量,跟踪正在进行的交易数量等。

附加功能

演示

extern crate raii_counter;
use raii_counter::Counter;

let counter = Counter::builder().build();
assert_eq!(counter.count(), 1);

let weak = counter.downgrade();
assert_eq!(weak.count(), 0);

{
    let _counter1 = weak.spawn_upgrade();
    assert_eq!(weak.count(), 1);
    let _counter2 = weak.spawn_upgrade();
    assert_eq!(weak.count(), 2);
}

assert_eq!(weak.count(), 0);

依赖项

~315–780KB
~18K SLoC