0

我目前正在尝试为数百个类制作一个 Logger,它会监听 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

我认为是.. 如果您的解决方案仅用于测试目的,我认为没有太多问题,否则,您应该考虑对应用程序性能的潜在影响,主要与同时运行的对象数量和相关日志记录对象有关谁在对他们进行投票..

你应该为每个类提供一个线程轮询方法,当你轮询的状态发生变化时,然后引发事件。

于 2016-06-22T12:37:32.780 回答