#信号量 #计数器 #阻塞 #计数 #提取 #原子 #文档

std-semaphore

从Rust 1.7.0提取的计数、阻塞信号量

1 个不稳定版本

使用旧的Rust 2015

0.1.0 2016年7月15日

#641并发

Download history 480/week @ 2024-03-14 408/week @ 2024-03-21 381/week @ 2024-03-28 361/week @ 2024-04-04 338/week @ 2024-04-11 419/week @ 2024-04-18 384/week @ 2024-04-25 419/week @ 2024-05-02 507/week @ 2024-05-09 517/week @ 2024-05-16 303/week @ 2024-05-23 345/week @ 2024-05-30 270/week @ 2024-06-06 429/week @ 2024-06-13 388/week @ 2024-06-20 296/week @ 2024-06-27

1,431 每月下载量
用于 10 个包(直接使用6个)

MIT/Apache

8KB
118 代码行

std-semaphore

Build Status

文档(master)

从Rust 1.7.0提取的计数、阻塞信号量。

信号量是一种原子计数器,只有在计数器为正数时才允许访问。每次获取都会阻塞调用线程,直到计数器为正数,每次释放都会增加计数器,并在必要时解除任何线程的阻塞。

用法

将以下内容添加到您的Cargo.toml

[dependencies]
std-semaphore = "0.1"

并将此内容添加到您的crate根目录

extern crate std_semaphore;

示例

use std_semaphore::Semaphore;

// Create a semaphore that represents 5 resources
let sem = Semaphore::new(5);

// Acquire one of the resources
sem.acquire();

// Acquire one of the resources for a limited period of time
{
    let _guard = sem.access();
    // ...
} // resources is released here

// Release our initially acquired resource
sem.release();

许可证

除非另有说明,所有代码、测试和文档均为© 2014 Rust项目开发者所有,并双重许可Apache 2.0和MIT许可证。有关更多信息,请参阅src/lib.rs顶部的版权声明。

没有运行时依赖