c – SIGXFSZ是由内核发送的,除非有什么内容打印到stdout?
我正在学习“Unix环境下的高级编程”,并且在第10章的练习11中遇到了问题. 在我的程序中,我将RLIMIT_FSIZE设置为1024. 所以当写入试图超过该限制时,内核应该将SIGXFSZ发送到我的程序. 但我发现SIGXFSZ不发送,除非打印到stdout的东西. 这是我的代码:
如果我在代码中注释掉以下行,内核将不会传输SIGXFSZ.
为什么会这样?提前致谢.
最佳答案
user3693690在本书附录C中找到了答案:
如果这是Linux内核用来处理SIGXFSZ的方式,那就这样吧,但我觉得这很奇怪. (编辑:鲜蔬坊站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- linux脚本与netcat在x小时后停止工作
- linux – bash fork错误(资源暂时不可用)不会停止,并且每次
- nginx 常用命令 重启 平滑重启
- /usr/local/bin/python3:bad interpreter:ubuntu 14.04没
- 如何从linux上的命令行安装NuGet
- linux – 如何解决SVN 1.6不支持的存储库间单文件外部问题?
- 如何在linux中更改simplehttpserver上的端口?
- LINUX实操:Ubuntu 16.04安装GO语言
- 在Linux fq_codel中有什么独立的流程?
- linux – lockfile-create在bash脚本中不起作用