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

时间:2010-01-01 23:27:58

标签: 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();

提前致谢。

1 个答案:

答案 0 :(得分:5)

这是因为你在开头fork(),创建守护进程的两个正在运行的实例......