# Delegeerd.BeginInvokeren() en geheugenuitvalsproblemen

<datetime class="hidden">2004-02-20T00:00</datetime>

<!-- category -- mostlylucidcouk, Imported, C#, .NET -->
Ik ben steeds meer betrokken bij de wereld van asynchronie en heb wat onderzoek gedaan naar een aantal puinhooppunten van multi-threading.
Ik kwam vandaag op een interessant voorbeeld tegen, dat het gebruik van BeginInvoke bezit zonder een corresponderende EndInvocation bij het gebruiken van delegaten. [Programmeren van .NET Komponenten door Juval Lowy](http://www.amazon.co.uk/exec/obidos/ASIN/0596003471/mostlylucid-21)) vermeld dat een goede manier om gebeurtenissen asynchronistisch te ontsnappen, is om BeginInvoke op de delegate te roepen.
Nou, lezen rond een beetje, ontdekte ik. [Dit is van Mike Woodring.](http://www.bearcanyon.com/dotnet/#FireAndForget) Die bevat deze verklaring: *"Te beginnen met de release van 1.1 van het NET FrameworkM SK3 hebben de SDK-docs nu een waarschuwing: "EndInvoke" roepen op de delegates die je hebt geroepen, om mogelijke lekken te voorkomen.* Nu kan ik het bit in de documenten niet vinden dat zegt: ,, maar [Nog een artikel.](http://www.ondotnet.com/pub/a/dotnet/2003/02/24/asyncdelegates.html?page=2) Naar [O'Reilly](http://www.ondotnet.com/dotnet/) Het lijkt een goed idee om deze potentiële leak te voorkomen. [Mike's spullen](http://www.bearcanyon.com/dotnet/#FireAndForget) Hij heeft een handmatige kleine hulpklasse die de ['Fire en Vergeet idiom'](http://www.bearcanyon.com/dotnet/#FireAndForget) - dood makkelijk, nu kan ik mooi vuur hebben en bellen vergeten zonder me zorgen te maken over onbedoelde lekken.

UPDATE: De doc-referentie gevonden, als je MSDN hebt. [Hier.](https://web.archive.org/web/ms-help://ms.netframeworksdkv1.1/cpguidenf/html/cpovrasynchronousprogrammingoverview.htm), als de op-lijnversie is [Hier.](http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpovrasynchronousprogrammingoverview.asp)