Artikel-ID: 294710 - Geändert am: Donnerstag, 23. Oktober 2003 - Version: 2.2 Fehler: Speicherleck im Client-Prozess bei UDP für DCOM-Protokoll
ProblembeschreibungWenn ein Prozess der DCOM (Distributed Component Object Model)-Client, der UDP (User Datagram Protocol) verwendet, eine große Anzahl von COM-Objekte auf dem Remotecomputer erstellt oder viele Aufrufe von Methoden, die Schnittstellenzeiger als Parameter zurückgeben, sehen Sie möglicherweise eine konsistente Zunahme die privaten Bytes dieses DCOM-Client-Prozesses. Wenn Schnittstellenzeigern gemarshallt werden, werden durch den Clientprozess die Objektkennung (OID) und Zeiger BEZEICHNERS für einen Schnittstellenzeiger (Interface Identifier), IPID zwischengespeichert. Wenn viele Aktivierungen und Methodenaufrufe vorhanden sind, weiterhin dieser Cache vergrößert werden, wenn Sie das UDP-DCOM-Protokoll verwenden. Wenn der DCOM-Server keine neue Schnittstelle um seinen Clients bei jedem zurückgibt (der ein Singleton, ein Objektpooling oder ein Objekt Wiederverwendung Szenario ausgeführt wird), kann dieses Problem nicht auftreten, weil die OID und IPIDs wiederverwendet werden. LösungUm dieses Problem zu umgehen, verwenden Sie TCP/IP anstelle von UDP für das DCOM-Protokoll. Gehen Sie folgendermaßen vor Connection-orientierten TCP/IP die Liste der Standardprotokolle hinzu,
StatusMicrosoft hat bestätigt, dass es sich hierbei um ein Problem bei den in diesem Artikel Microsoft-Produkten handelt. Weitere InformationenDas folgende Szenario ist ein Szenario, das das Problem reproduzieren kann. Ein DCOM-Client-Prozess, der UDP verwendet, erstellt ein COM-Objekt auf einem Remotecomputer, ruft eine einfache Methode auf und den Proxy frei. Diese Aufrufsequenz wird in einer Schleife, die den folgenden Code ähnelt umbrochen: Die Informationen in diesem Artikel beziehen sich auf:
Maschinell übersetzter ArtikelWichtig: Dieser Artikel wurde maschinell und nicht von einem Menschen übersetzt. Die Microsoft Knowledge Base ist sehr umfangreich und ihre Inhalte werden ständig ergänzt beziehungsweise überarbeitet. Um Ihnen dennoch alle Inhalte auf Deutsch anbieten zu können, werden viele Artikel nicht von Menschen, sondern von Übersetzungsprogrammen übersetzt, die kontinuierlich optimiert werden. Doch noch sind maschinell übersetzte Texte in der Regel nicht perfekt, insbesondere hinsichtlich Grammatik und des Einsatzes von Fremdwörtern sowie Fachbegriffen. Microsoft übernimmt keine Gewähr für die sprachliche Qualität oder die technische Richtigkeit der Übersetzungen und ist nicht für Probleme haftbar, die direkt oder indirekt durch Übersetzungsfehler oder die Verwendung der übersetzten Inhalte durch Kunden entstehen könnten. Den englischen Originalartikel können Sie über folgenden Link abrufen: 294710
(http://support.microsoft.com/kb/294710/en-us/
)
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.
| Weitere Ressourcen Weitere SupportseitenCommunitySPRACHE AUSWÄHLEN |






Windows Live
Facebook
Twitter
Linkedin
Digg it
Yahoo
Delicious
StumbleUpon
Yammer
Reddit
Technorati
FriendFeed
Email


Zum Anfang