ostream :: flush context

时间:2018-06-03 21:20:36

标签: linux multithreading real-time

我在多线程应用程序中按以下顺序使用ostream::writeostream::flush操作:

// <<--  start time measurement
{
ostream::write();
ostream::flush();
}
//<<--  end time measurement

关于测量上述序列的时间的问题,我得到一个非常短的时间(~10毫秒),但是线程入口之间的时间变得非常大(~400毫秒),这只是因为添加了{{1} }和ostream::flush命令。 只有一次,我得到的时间差异变得更大,但我不确定是否是因为某些上下文切换。

我在Linux机器上测试它,双核cpu。

这让我感到困惑,我认为这两个函数都是阻塞的,或者是在ostream:::write之后才真正完成了写作?

修改

只有一个线程写入文件。

0 个答案:

没有答案