2つの一致する非ブロッキング送信および受信操作から1つの要求オブジェクトのみをチェックするだけで十分ですか。
これは私のプログラムでリクエストオブジェクトを処理する労力を減らすので素晴らしいでしょう。
ブーストmpiの小さな例を次に示します。
#include <boost/mpi.hpp>
int main(int argc, char* argv[]) {
// initialize mpi
mpi::environment env(argc, argv);
boost::mpi::communicator world;
boost::mpi::request req0, req1;
double blub;
if(world.rank()==1)
req1 = world.irecv(0, 23, blub);
if(world.rank()==0)
req0 = world.isend(0, 23, blub);
//now I want to synchronize the processors is this enough?
req0.wait();
//or do I also need this line
req1.wait();
}