Delen via


AnonymousPipeServerStream.Dispose-gedrag voor HandleInheritability.Inheritable

Om resourcelekken te voorkomen, moet uw code de AnonymousPipeServerStream.DisposeLocalCopyOfClientHandle() methode aanroepen nadat de client-ingang is doorgegeven aan het onderliggende proces. Het gedrag van AnonymousPipeServerStream.Dispose is verbeterd om de kans op vergelijkbare lekken te verlagen voor gebruikers die niet bellen DisposeLocalCopyOfClientHandle().

Vorig gedrag

Voorheen werd de clienthandgreep die eigendom is van het AnonymousPipeServerStream exemplaar niet verwijderd, AnonymousPipeServerStream.Dispose tenzij de handle helemaal niet beschikbaar was.

Nieuw gedrag

Vanaf .NET 8 wordt de client verwerkt die eigendom is van een server die is gemaakt voor out-of-proc-communicatie door AnonymousPipeServerStream.Dispose als deze niet wordt weergegeven met behulp van de AnonymousPipeServerStream.ClientSafePipeHandle eigenschap. (U maakt een server voor out-of-proc-communicatie door aan de AnonymousPipeServerStream(PipeDirection, HandleInheritability) constructor door te gevenHandleInheritability.Inheritable.)

Versie geïntroduceerd

.NET 8 Preview 1

Type wijziging die fouten veroorzaken

Deze wijziging is een gedragswijziging.

Reden voor wijziging

Deze wijziging is geïntroduceerd om een veelvoorkomend resourcelek te voorkomen.

Als er een server is gemaakt voor out-of-proc-communicatie, moet u de clienthandgreep die als een tekenreeks wordt weergegeven niet opnieuw gebruiken via de GetClientHandleAsString() methode nadat het serverexemplaren zijn verwijderd.

Betrokken API's