#signal #stdout #println #broken-pipe

sigpipe

单个函数调用即可重置 SIGPIPE 并修复 向 stdout 打印失败的错误

3 个版本

0.1.3 2022年2月2日
0.1.2 2022年2月2日
0.1.1 2022年2月2日

#1323命令行工具

Download history 112/week @ 2024-03-25 2610/week @ 2024-04-01 2724/week @ 2024-04-08 2167/week @ 2024-04-15 2191/week @ 2024-04-22 1906/week @ 2024-04-29 1966/week @ 2024-05-06 2899/week @ 2024-05-13 2015/week @ 2024-05-20 2011/week @ 2024-05-27 1447/week @ 2024-06-03 1702/week @ 2024-06-10 2378/week @ 2024-06-17 2602/week @ 2024-06-24 1945/week @ 2024-07-01 2985/week @ 2024-07-08

9,965 每月下载量
7 crates 中使用

MIT 许可证

4KB

GitHub Contributors Stars Build Status Downloads Crates.io

sigpipe

Rust 默认运行时在 println! 和相关函数写入已关闭的管道时会崩溃。sigpipe 通过在程序开始时调用单个函数来修复此问题。

用法


fn main() {
    sigpipe::reset();
    // The rest of your program goes here.
}

安装

# Using cargo-edit
cargo add sigpipe

# In your Cargo.toml
[dependencies]
sigpipe = "0.1"

讨论

关于此问题已有多次讨论。请参阅:

致谢

此库直接复制自 @burntsushi 的 StackOverflow 答案.

我创建这个库是为了将解决方案打包起来,这样用户就不必在网上搜索了。

依赖项

~43KB