【发布时间】:2014-01-26 13:20:26
【问题描述】:
有没有办法在 Linux 上的 C/C++ 应用程序中写入打开的文件,如果应用程序被杀死,打开的文件将被丢弃?
应用程序可以被 SIGKILL 杀死,所以我不能使用信号处理程序。
【问题讨论】:
-
丢弃的意思是从文件系统中删除(删除)?
-
可能不在进程本身内。写入时文件已经具有正确的名称是否重要。如果没有,您可以使用临时名称编写它们。如果该进程在
close()之前一直存在,请重命名该文件。如果进程被杀死,您如何摆脱临时文件取决于您想要执行它的紧急程度:定期清理 cron,父进程注意到子进程已死并在其之后进行清理。
标签: linux file-io filehandle