Rendezvous (Informatik)

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

In der Informatik bezeichnet ein Rendezvous eine Variante der synchronen Interprozesskommunikation. Ein Rendezvous ist ein Kontaktpunkt zwischen zwei nebenläufigen Prozessen zur Übergabe von Daten, wobei der sendende Prozess an einer bestimmten Stelle seines Programms wartet, bis der empfangende Prozess die Daten abgeholt hat. Umgekehrt wartet der Empfänger, wenn er die Daten benötigt, so lange, bis der Sender die Daten bereitstellt.

Dies entspricht einer synchronen Nachrichtenübertragung mit blockierendem Empfang in einem Netzwerk, bei der der Empfänger so lange wartet, bis er Daten bekommt, und der Sender nach dem Verschicken der Nachricht wartet, bis der Empfänger den Erhalt bestätigt hat.

Findet die Übergabe nach einer vorgegebenen Zeit nicht statt, kann der Prozess mit einem Fehler (Time-out) abbrechen.

Der Name „Rendezvous“ rührt von der Ähnlichkeit mit einer Verabredung zur Übergabe eines Objekts im Alltag her. Das Verfahren entspricht dem Verhalten, das man zum Beispiel bei einer Schlüsselübergabe beobachtet: beide Personen müssen anwesend sein, damit die Übergabe stattfinden kann. Wer zuerst kommt, muss so lange warten, bis auch der andere da ist. Der Time-out entspricht der Situation, in der der Wartende aufgibt, weil der andere für längere Zeit nicht erscheint. Dann ist die Übergabe gescheitert.