#线程池 #future #计算 #手动 #结果 #cpupool

futures-cpupool

线程池实现,将线程的计算结果分配给 futures。

8 个版本

使用旧的 Rust 2015

0.1.8 2018年1月2日
0.1.7 2017年10月12日
0.1.6 2017年9月14日
0.1.5 2017年3月21日
0.1.0 2016年8月1日

#手动 中排名 26

Download history 23109/week @ 2024-03-14 21540/week @ 2024-03-21 21479/week @ 2024-03-28 17916/week @ 2024-04-04 17667/week @ 2024-04-11 17742/week @ 2024-04-18 21159/week @ 2024-04-25 19973/week @ 2024-05-02 19314/week @ 2024-05-09 19194/week @ 2024-05-16 19606/week @ 2024-05-23 21956/week @ 2024-05-30 22239/week @ 2024-06-06 20211/week @ 2024-06-13 19026/week @ 2024-06-20 15475/week @ 2024-06-27

每月下载量 81,141
此crate已失去人气

MIT/Apache

71KB
993

线程池-futures-cpupool

一个库,用于创建表示在专用线程池上并发执行工作的 futures。

Build Status Build status

文档

用法

首先,将此内容添加到您的 Cargo.toml

[dependencies]
futures = "0.1"
futures-cpupool = "0.1"

然后,将此内容添加到您的 crate

extern crate futures;
extern crate futures_cpupool;

use futures_cpupool::CpuPool;

许可证

线程池-futures-cpupool 主要在 MIT 许可证和 Apache 许可证(版本 2.0)的条款下分发,部分内容受各种类似 BSD 许可证的覆盖。

请参阅 LICENSE-APACHE 和 LICENSE-MIT 以获取详细信息。


lib.rs:

一个简单的 crate,用于在线程池中执行工作并返回一个 future。

此 crate 提供了一个简单的线程池抽象,用于在当前线程之外运行工作。通过返回一个 Future 实例来表示工作可能稍后完成,并可以将其与进一步的计算一起链式执行。

extern crate futures;
extern crate futures_cpupool;

use futures::Future;
use futures_cpupool::CpuPool;


// Create a worker thread pool with four threads
let pool = CpuPool::new(4);

// Execute some work on the thread pool, optionally closing over data.
let a = pool.spawn(long_running_future(2));
let b = pool.spawn(long_running_future(100));

// Express some further computation once the work is completed on the thread
// pool.
let c = a.join(b).map(|(a, b)| a + b).wait().unwrap();

// Print out the result
println!("{:?}", c);

依赖关系