19次发布
0.3.5 | 2024年5月8日 |
---|---|
0.3.4 | 2024年1月25日 |
0.3.3 | 2023年12月13日 |
0.3.2 | 2022年9月30日 |
0.1.0 | 2019年7月31日 |
185在 网络编程 中排名
每月15,061次下载
在 3 crates 中使用
32KB
615 行
stubborn-io
此crate提供自动从潜在断开/中断中恢复的io traits/structs。
要在您的项目中使用,请将以下内容添加到您的Cargo.toml中
stubborn-io = "0.3"
API文档、示例和动机可在此处找到 - https://docs.rs/stubborn-io .
使用示例
在这个示例中,我们将看到一个tokio的TcpStream的替代品,区别在于它会在连接失败时自动尝试重新连接。
use stubborn_io::StubbornTcpStream;
use tokio::io::AsyncWriteExt;
let addr = "localhost:8080";
// we are connecting to the TcpStream using the default built in options.
// these can also be customized (for example, the amount of reconnect attempts,
// wait duration, etc) using the connect_with_options method.
let mut tcp_stream = StubbornTcpStream::connect(addr).await?;
// once we acquire the wrapped IO, in this case, a TcpStream, we can
// call all of the regular methods on it, as seen below
tcp_stream.write_all(b"hello world!").await?;
依赖项
~3–11MB
~98K SLoC