Kombinieren von Pipe-und nonpipe-Parametern

Wenn Sie Pipetypen und andere Typen in einem Remote Prozedur aufrufsbefehl kombinieren, werden die Daten gemäß der Richtung des Parameters übertragen:

  • In Richtung werden [ die Daten für alle nonpipe-Argumente zuerst übertragen, gefolgt von pipedaten. ]
  • In der [ Ausrichtungs ] Richtung sendet der Server zuerst die Pipe-Daten. Nachdem die Manager-Routine zurückgegeben wurde, überträgt der Server die nonpipe-Daten.
  • Wenn [ in, out ] -Pipe-Argumente in Kombination mit [ in ] -, out-, out -, out-und over-Pipe-Argumenten vorhanden sind, werden zuerst die Eingabedaten wie zuvor beschrieben übertragen. Anschließend werden die Ausgabedaten wie zuvor beschrieben übertragen.

Die folgende Einschränkung gilt für diese (Mittel l 3,0) Implementierung von Pipes: Wenn Sie Pipetypen und andere Typen in einem einzelnen Remote Prozedur aufzurufen kombinieren, müssen die nonpipe-Parameter über eine klar definierte Größe verfügen, damit der Mittelwert Compiler die benötigte Puffergröße berechnen kann. Sie können z. b. keine pipenameter mit einem [ eindeutigen ] Zeiger oder einer konformen Struktur kombinieren, da ihre Größe zum Zeitpunkt der Kompilierung nicht bestimmt werden kann.

Kanal

/Oi