Freigeben über


Leerlauf der Verbindungsbereinigung

Standardmäßig werden Verbindungen im Threadpool erst geschlossen, wenn die gesamte Zuordnung heruntergefahren ist. Diese Richtlinie ermöglicht Clients mit einer großen Anzahl von Threads oder Sicherheitsidentitäten, RPC-Aufrufe an den Server effizient durchzuführen. Der Nachteil besteht darin, dass eine übermäßig große Anzahl von Ressourcen für die Aufrechterhaltung dieser Verbindungen committet werden kann. Um den Prozess zu verwalten, stellt RPC die RpcMgmtEnableIdleCleanup-Funktion bereit . Diese Funktion ermöglicht die Leerlaufbereinigung der Verbindung. Der Client überprüft in regelmäßigen Abständen den Verbindungspool und schließt Verbindungen, die kürzlich nicht verwendet wurden. Wenn die Zuordnung Kontexthandles verwaltet hat, schließt die Leerlaufverbindungsbereinigung alle Verbindungen im Leerlauf, stellt jedoch sicher, dass mindestens eine Verbindung geöffnet bleibt, auch wenn sich die Verbindung im Leerlauf befindet (andernfalls erhält der Server eine Ausführung des Kontexthandles). Wenn die Zuordnung keine Kontexthandles verwaltet hat, schließt die Leerlauf-Verbindungsbereinigung alle Verbindungen im Leerlauf, auch wenn dadurch keine Verbindungen im Pool verbleiben.

Unter Windows XP verfolgt die RPC-Laufzeit die Anzahl der geöffneten Verbindungen in einer Zuordnung und aktiviert automatisch die Leerlaufbereinigung von Verbindungen, wenn die Anzahl der Verbindungen in einer Zuordnung einen bestimmten Schwellenwert überschreitet.