Gibt es eine Problemumgehung, um einen Ref-Parameter innerhalb einer anonymen Methode zu aktualisieren?
Ich weiß, dass die anonyme Methode keinen Zugriff auf ref-Parameter des äußeren Bereichs erlaubt, aber gibt es einen anderen Weg, dies zu tun? Ich verwende eine externe Bibliothek für den MessageStream, also kann ich die Argumente des Delegaten nicht ändern ...
%Vor% In Ihrem Fall gibt es keinen praktikablen Workaround für dieses Problem: Wenn das Ereignis Stream.MessageReceived
ausgelöst wird, kann der count
im Aufrufer Ihrer DoWork
-Funktion weit entfernt sein.
In solchen Situationen sollten Sie das count
in einem Objekt kapseln und einen Verweis auf dieses Objekt sowohl im Ereignishandler als auch im Aufrufer beibehalten, wie folgt:
Tags und Links c# ref anonymous-methods