2010-04-02 7 views
5

Wie C-Programm warten (auf Linux)? (Ich brauche mit MPI verwenden warten - ich brauche C-Code bitte)Wie C-Programm warten (auf Linux)?

+1

sleep() von unistd.h? Was meinst du mit "warten"? Einfach für eine bestimmte Zeit anhalten oder darauf warten, dass ein anderer Prozess etwas unternimmt? –

Antwort

3
+3

Oder 'nanoschlaf ', falls er weniger als eine Sekunde warten möchte: http://www.manpagez.com/man/2/nanosleep/ (es war klar aus dem Link, aber die Leute überspringen manchmal Links links) –

2

Warten Sie was genau verwenden kann? Wenn Sie nur eine Verzögerung wünschen, verwenden Sie sleep().

1

Verwenden Sie MPI_Recv, und verwenden Sie MPI_Send, um eine Nachricht an den wartenden Prozess zu senden, wenn es fortgesetzt werden soll.

11

Wenn Sie für eine MPI-Anfrage Verwendung MPI_Wait warten: http://www.manpagez.com/man/3/MPI_Wait/

Wenn Sie eine bestimmte Menge an Zeit verwenden Schlaf warten wollen: http://www.manpagez.com/man/3/Sleep/

Wenn Sie einen anderen Prozess warten wollen Verwendung waitpid beenden : http://linux.die.net/man/2/waitpid

Wenn Sie eine Zustandsgröße (Multi-Thread-Programmierung) verwenden pthread_cond_wait warten wollen: http://www.opengroup.org/onlinepubs/007908775/xsh/pthread_cond_wait.html

definieren, was Sie wa nicht warten.

+1

Und Wenn Sie möchten, dass MPI-Prozesse aufeinander warten, sollten Sie mpi_barrier verwenden –