Freigeben über


Stub

Der Stub besteht wie der Proxy aus einem oder mehreren Schnittstellenteilen und einem Manager. Jeder Schnittstellenstub stellt Code bereit, um die Parameter und den Code aufzuheben, der eine der unterstützten Schnittstellen des Objekts aufruft. Jeder Stub bietet auch eine Schnittstelle für die interne Kommunikation. Der Stub-Manager verfolgt die verfügbaren Schnittstellen-Stubs nach.

Es gibt jedoch die folgenden Unterschiede zwischen dem Stub und dem Proxy:

  • Der wichtigste Unterschied besteht darin, dass der Stub den Client im Adressraum des Objekts darstellt.
  • Der Stub wird nicht als Aggregatobjekt implementiert, da es nicht erforderlich ist, dass der Client als einzelne Einheit angezeigt werden muss. Jedes Stück im Stub ist eine separate Komponente.
  • Die Schnittstellen-Stubs sind nicht öffentlich, sondern privat.
  • Die Schnittstellenstubs implementieren IRpcStubBuffer, nicht IRpcProxyBuffer.
  • Anstatt die zu marshallierenden Parameter zu packen, packt der Stub sie nach dem Marshallen aus und verpackt dann die Antwort.

Struktur des Stubs

Das folgende Diagramm zeigt die Struktur des Stubs. Jeder Schnittstellenstub ist mit einer Schnittstelle für das Objekt verbunden. Der Kanal sendet eingehende Nachrichten an den entsprechenden Schnittstellenstub. Alle Komponenten kommunizieren mit dem Kanal über IRpcChannelBuffer, die Schnittstelle, die Zugriff auf die RPC-Laufzeitbibliothek bietet.

Screenshot: Struktur des Stubs

Kanal

Objektübergreifende Kommunikation

Marshalldetails

Microsoft RPC

Proxy