1 个不稳定版本
使用旧的 Rust 2015
0.1.0 | 2017年10月20日 |
---|
#44 in #bounded
6KB
tokio-stdout
使用 Tokio encoder 创建一个新线程写入 stdout。
这不是生产就绪的
- 发送到 sink 的项目不一定会被写入 stdout(啊!)
- 错误没有被正确冒泡
- 用户应该能够限制
BytesMut
的大小 - 更周全地处理性能权衡会更好
extern crate futures;
extern crate tokio_fmt_encoder;
extern crate tokio_io;
extern crate tokio_stdout;
use futures::{Future, Stream};
use futures::sync::mpsc::SendError;
use futures::stream::iter_ok;
use tokio_fmt_encoder::DebugEncoder;
use tokio_stdout::spawn_encoder_sink_bounded;
fn main() {
let encoder: DebugEncoder<usize> = Default::default();
iter_ok::<_, SendError<_>>((1..10).into_iter())
.forward(spawn_encoder_sink_bounded(encoder, 1))
.wait()
.unwrap();
}
许可证:MIT/Apache-2.0
lib.rs
:
使用 Tokio encoder 创建一个新线程写入 stdout。
这不是生产就绪的
- 发送到 sink 的项目不一定会被写入 stdout(啊!)
- 错误没有被正确冒泡
- 用户应该能够限制
BytesMut
的大小 - 更周全地处理性能权衡会更好
extern crate futures;
extern crate tokio_fmt_encoder;
extern crate tokio_io;
extern crate tokio_stdout;
use futures::{Future, Stream};
use futures::sync::mpsc::SendError;
use futures::stream::iter_ok;
use tokio_fmt_encoder::DebugEncoder;
use tokio_stdout::spawn_encoder_sink_bounded;
fn main() {
let encoder: DebugEncoder<usize> = Default::default();
iter_ok::<_, SendError<_>>((1..10).into_iter())
.forward(spawn_encoder_sink_bounded(encoder, 1))
.wait()
.unwrap();
}
依赖项
~605KB
~11K SLoC