我创建了一个库,其中包含与下面类似的一部分代码
int a;
a = 5;
std::ofstream outFile("File.txt");
outFile << "Values : " << std::endl;
outFile << a << std::endl;
现在,该库供两个不同的进程使用,它们输出File.txt
并具有两个不同的输出
输出1:
Values :
输出2:
Values :
5
我发现了一些资源,其中提到了使用std::to_string
(Converting integer to string in c++)转换为字符串将整数传递到流的资源。但是我想知道是什么使两个流程在同一情况下行为不同。感觉好像其中一个进程对全局状态下的流进行了一些更改
答案 0 :(得分:1)
尝试在不同目录中运行两个不同的进程。根据您显示的内容,他们很可能都试图访问同一文件。这不是您可以做的。查看this post,其中讨论了为什么尝试使用线程同时打开同一文件两次无法正常工作。