#thread-pool #scoped #pool #thread

yastl

另一个作用域线程池库

3个版本

0.1.2 2021年2月25日
0.1.1 2021年2月25日
0.1.0 2021年2月23日

760并发

Download history 3716/week @ 2024-03-14 3054/week @ 2024-03-21 2606/week @ 2024-03-28 4088/week @ 2024-04-04 4199/week @ 2024-04-11 3726/week @ 2024-04-18 2519/week @ 2024-04-25 3178/week @ 2024-05-02 3396/week @ 2024-05-09 2983/week @ 2024-05-16 2462/week @ 2024-05-23 2512/week @ 2024-05-30 3289/week @ 2024-06-06 2482/week @ 2024-06-13 2648/week @ 2024-06-20 1917/week @ 2024-06-27

10,934 每月下载量
用于 55 个Crate (5个直接使用)

MIT 许可协议

21KB
432

yastl

Crates.io Documentation

yastl 是一个为Rust设计的另一个作用域线程池库。

yastl 非常受 scoped_threadpoolscoped_pool Crate 的启发。它主要是将 scoped_pool Crate 移植到现代Rust的版本。

示例

use yastl::Pool;

fn main() {
    let pool = Pool::new(4);
    let mut list = vec![1, 2, 3, 4, 5];

    pool.scoped(|scope| {
        // since the `scope` guarantees that the threads are finished if it drops,
        // we can safely borrow `list` inside here.
        for x in list.iter_mut() {
            scope.execute(move || {
                *x += 2;
            });
        }
    });

    assert_eq!(list, vec![3, 4, 5, 6, 7]);
}

功能标志

  • coz:启用对 coz 分析器的支持。在每一个新线程中调用 coz::thread_init()

许可协议

MIT 许可协议下。

依赖项

~260KB