c – SIGXFSZ是由内核发送的,除非有什么内容打印到stdout?
我正在学习“Unix环境下的高级编程”,并且在第10章的练习11中遇到了问题. 在我的程序中,我将RLIMIT_FSIZE设置为1024. 所以当写入试图超过该限制时,内核应该将SIGXFSZ发送到我的程序. 但我发现SIGXFSZ不发送,除非打印到stdout的东西. 这是我的代码:
如果我在代码中注释掉以下行,内核将不会传输SIGXFSZ.
为什么会这样?提前致谢.
最佳答案
user3693690在本书附录C中找到了答案:
如果这是Linux内核用来处理SIGXFSZ的方式,那就这样吧,但我觉得这很奇怪. (编辑:台州站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- Hazelcast服务器作为linux服务
- LINUX教学:sudo 出现unable to resolve host 解决方法
- linux – lockfile-create在bash脚本中不起作用
- linux – 在bash中将apache日志日期格式转换为epoch
- linux – 如果我启动后台进程然后注销,它会继续运行吗?
- Linux内核模块编译失败
- linux – MongoDB安装错误:“mongod:加载共享库时出错:l
- Linux上的C# – 基于使用单声道经验的人都有意见?
- Linux:命令使文件夹可以递归地写入,而不影响其中的文件的权
- SAP Java:java.lang.NoClassDefFoundError:com.sap.conn.