#promise #primitive #sync

promiser

promise 同步 基础类型

1 个不稳定版本

使用旧的 Rust 2015

0.0.5 2017年4月15日

#33 in #promise


oyashio 中使用

MIT 许可证

11KB
272

rust-promise

目前请在 Cargo.toml 中使用 git 依赖

[dependencies.promise]

git = "https://github.com/viperscape/rust-promise.git"

示例用法

extern crate promise;
use promise::Promise;
use std::rand;

fn main () {
    let (pt,pr) = Promise::new();
    let bd = vec![rand::random::<u64>();1000];
    pt.deliver(bd);
    let v = pr.with(|x| x[999]); //copy value, returns inside of Result
    println!("{:?}",v); //Ok(3654177790282180513)
}

基准测试

这些代表一些基本的基准测试,实际速度可能差异很大。

test latch::tests::bench_latch            ... bench:        45 ns/iter (+/- 0)
test promise::tests::bench_channel_linear ... bench:       758 ns/iter (+/- 7)
test promise::tests::bench_promise_linear ... bench:         1 ns/iter (+/- 0)

依赖项

~315–540KB