odi*_*seh 9 logging singleton design-patterns
我们都知道log,ok,但为什么我们应该将«Logger»类视为单例?如果我们把它作为一个普通的非单元类,会发生什么?
Pri*_*ine 14
我在IBM网站上找到了这个.它很好地解释了Logger Singleton类的用法.
真正的单例的典型示例是日志服务.假设我们有一个基于事件的日志记录服务:客户端对象通过向日志记录服务发送消息来请求记录文本.其他对象实际上通过监听这些日志记录请求的日志记录服务并处理它们来在某处(控制台,文件,等等)记录文本.首先,请注意日志记录服务通过经典测试作为单例:
- 请求者需要一个众所周知的对象来向其发送记录请求.这意味着全球访问点.
- 由于日志记录服务是多个侦听器可以注册的单个事件源,因此只需要一个实例.
链接:明智地使用你的单身人士
如果您不使用单例类,则必须处理这些不同记录器实例之间的同步(写入文件或您使用的任何流).因此,当您只有一个全局Logger实例时,它会更容易.