1 个不稳定版本
0.1.0 | 2020年2月2日 |
---|
#1691 in 异步
10KB
175 行
greenthread-future-rs
将闭包转换为基于 greenthread 的 futures(裸机,no_std + no_alloc)。
简单来说,这是 Futurify 的 #![no_std]
版本。
我正在探索将其用于实现裸机线程。
示例
待定。
现在以单元测试为例
#[tokio::test]
async fn test() {
let h1 = tokio::spawn(ThreadFuture::from(|| {
println!("1.1");
yield_now();
println!("1.2");
1u32
}));
let h2 = tokio::spawn(ThreadFuture::from(|| {
println!("2.1");
yield_now();
println!("2.2");
2u32
}));
println!("join 1 => {}", h1.await.unwrap());
println!("join 2 => {}", h2.await.unwrap());
}
输出
1.1
2.1
1.2
2.2
join 1 => 1
join 2 => 2