[C#]コミッションベース、ラムダ式とイベント

手数料の.NETバージョンは、法に取り組んでいます。参加者は、戻り値の型とパラメータの型を定義するタイプセーフなクラスです。

委譲クラスは、メソッドへの参照のみならず、また、複数のメソッドへの参照を含むことができます。

直接委員会に関連するラムダ式。引数がデリゲート型であるときは、デリゲートが参照するメソッドを実装するためにラムダ式を使用することができます。

任意のデリゲートは、同じ場所のカスタムデリゲートクラス定義を打つことができます。デリゲートクラスで内側と外側に定義することができます。

委員会はまた、名前空間のトップレベルのオブジェクトとして定義することができます。

 

弱いイベント:

イベントによって直接パブリッシャとリスナーをリンクすることができます。しかし、ガベージコレクションの問題。たとえば。

リスナーへの直接の言及がない場合、それはまだ参照出版社です。

出版社はまだリスナーの基準トリガイベントを保持しているため、ガベージコレクタは、リスナーによって占有されていたメモリを空にすることはできません。

この強いつながりは弱いイベントパターンによって解決することができます。パブリッシャとリスナーの間の仲介としてWeakEventManagerの使用していること。

 集中プログラムで定義WeakEventManager <T> System.Windowsは、.NETのコアではありません。

弱参照方法であることがイベントを使用すると、定義されたインタフェースを実装IWeakEventListener

ReceiveWeakEvent

 

呼び出し。

 

おすすめ

転載: www.cnblogs.com/SignX/p/11222467.html