【发布时间】:2016-08-31 22:07:00
【问题描述】:
MPI 使用多个进程运行我的程序。
我希望其中一个进程休眠一段时间,以便它使用最少的 CPU。
std::this_thread::sleep_for() 看起来像我想要的,但在这种情况下,thread 位看起来有点粗略。
这样可以吗?
【问题讨论】:
-
大多数 MPI 实现在其自己的单独进程中开始每个等级。每个进程至少有一个线程。因此,
this_thread的使用非常好,但请注意 MPI 经常会产生额外的线程供内部使用,您不应该乱用它们(无论如何使用 C++ 接口实际上很难甚至不可能)。 -
@HristoIliev:我会赞成这个作为答案。
标签: c++ c++11 mpi sleep stdthread