0

現在、何百ものクラスのロガーを作成しようとしています。これは、3 つのプロパティの変更をリッスンし、変更があった場合はログ メッセージを作成します。

  public class MementoLoggerUtility<SLOC, AVAL, BVAL>
    {
        private SLOC Loc;
        private AVAL Val1;
        private BVAL Val2;

        /// <summary>
        /// CTOR
        /// </summary>
        public MementoLoggerUtility(ref SLOC loc, ref AVAL val1, ref BVAL val2)
        {
            Loc = loc;
            Val1 = val1;
            Val2 = val2;            
        }

リッスンするオブジェクトのコンストラクターで 3 プロパティを渡しますが、変更をリッスンするには、このクラスにOnPropertyChangedイベントが必要です。

(リッスンされたオブジェクトのプロパティ セッターに書き込むことはできません。)

この計画は実行可能ですか?そうでない場合は、別のオプションを提案していただけますか?

4

1 に答える 1

0

だと思います..ソリューションがテスト目的のみを目的としている場合、多くの問題はないと思います。それ以外の場合は、アプリケーションのパフォーマンスへの潜在的な影響を考慮する必要があります。主に、同時に実行されているオブジェクトの数と相対的なログ オブジェクトに関連しています。誰が彼らに投票しているのか..

クラスごとに 1 つのスレッド化されたポーリング メソッドを提供し、ポーリングしている状態が変化したときにイベントを発生させる必要があります。

于 2016-06-22T12:37:32.780 に答える