c++ - 守护进程将输出写入文件两次而不是在 C++ 中一次

标签 c++ file daemon

我编写了一个守护进程,将单词“Beat”写入文件,并以 15 秒的间隔跟踪当前日期和时间。但是,每次我检查输出文件时,守护进程似乎都像这样输出两次:

Beat: Fri Jan 1 18:09:01 2010

Beat: Fri Jan 1 18:09:01 2010

它应该只在入口处有的地方。 整个代码位于 http://pastebin.com/m27a81981 (我不想把它贴在这里,因为整个东西有点长。)。 写入文件的函数是

get_time();
ofstream outputFile("heart.txt", ios::app);
beat = "\nBeat: " + gtime + "\n";
outputFile << beat;
outputFile.close();

提前致谢。

最佳答案

因为你一开始就fork(),创建了两个守护进程的运行实例...

关于c++ - 守护进程将输出写入文件两次而不是在 C++ 中一次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1990012/

相关文章:

c++ - 生成示例音频数据 : trying to generate music plate crackling sound? (C++)

java - 使用 Java Service Wrapper 自定义 Linux 服务状态消息

java - 从 JAR 中读取文件不适用于 Windows

docker - 如何在 Ubuntu 上启动 Docker 守护进程?

linux - 进程处于可中断 sleep - 如何找出它在等待什么

c++ - 如果我们只定义复制构造函数/操作=,为什么移动构造函数/移动赋值没有隐式声明和定义为删除?

c++ - 减少临时对象到就地施工的分配

c++ - 使用 vector 中的对象排序

java - java 文件系统有什么并发性?

c - 我无法用c语言读取另一个结构