Ich habe 2 Prozesse, ein Prozess streamt Pakete zu einem anderen bis ein interner Interrupt den Prozess stoppt (der Prozess, der sendet). Ich möchte einen Mechanismus haben, den der andere Prozess empfangen kann, bis eine Nachricht auf diesem Kanal empfangen wird.Wie verwende ich mpi in einer Echtzeit-Streaming-Anwendung?
Gibt es einen anderen Weg, als den Befehl halt als Nachricht zu übertragen? Ich möchte nicht beenden/Interrupt als eine andere Nachricht senden, da es Szenarien geben kann, dass der Interrupt den Absenderprozess beenden kann.
if (world.rank() != 0) {
while (!interrupt())
world.send(ROOT, ID, a, bufferSize);
// I prefer not to send finish/interrupt as another message
}
else {
while (/*there is any packet to be received*/)
world.recv(boost::mpi::any_source, ID, a, bufferSize);
}