调用另一个程序,将任务分配给其中的线程,然后返回

时间:2018-10-02 15:32:40

标签: c++ multithreading

我正在编写一个C ++程序,该程序将被另一个程序调用。我的程序流程如下图所示:

enter image description here

程序说明: program-1会定期调用program-2(大约每30秒调用一次)。 program-2的唯一任务是写入数据,但是我不想阻止program-1在写入数据时等待。因此,我想分配将数据写入另一个线程并立即退出Program-2的任务。

问题:我应该如何在Program-2中实现一个线程,以使其不会阻塞program-1

PS:每次都需要将数据写入同一文件。

1 个答案:

答案 0 :(得分:1)

如果保存数据花费的时间多于产生数据的时间,那么您将不得不并行地将其写入另一个文件,您别无选择,因为即使缓冲数据也会导致缓冲区无限期地增长和增长。

如果不是这种情况,则您不需要在program-2中使用单独的线程,请先读取所有数据,然后每次将其写入文件中。