如何在C或c++中进行多任务处理?

How can I do Multitasking in C or C++

本文关键字:多任务处理 c++      更新时间:2023-10-16

以一个程序为例,该程序计算键入一个段落所花费的时间,并显示所花费的时间(在最后)。这里我们的程序同时执行两个任务:1.等待用户输入(输入)。2.时钟落后计算经过的时间。

我如何在执行过程中(同时)完成这两个任务。[好!你可能会想到减去最后的&我们可以通过系统获得初始时间,但我希望多任务同时进行。

我试着搜索了很多标准库函数,但没有一个能做到。我认为实现多任务的唯一方法是程序的智能算法,它可以同时高效地处理许多任务。

可能是多线程。使用pthreads。

[虽然,在你的例子中不需要它。

int time = getTime();
// run program
int endTime = getTime();
printf("%dn", endTime - time);

]

在c++ 11中,你可以使用std::thread,这当然是标准的一部分。

如果使用C或旧的c++编译器,这将不起作用。

另一个选项是boost::thread