我有一个Windows服务,其中包含一个单例,该单例又使用一些记录器、消息队列监听器等。这些类实现了IDisposable
。我应该在单例本身中实现IDisposable
,还是需要进行其他操作以确保在服务停止/崩溃后,所有本地资源都不会出现问题?
该单例的实现如下:
public class Temp
{
private static readonly Lazy<Temp> instance = new Lazy<Temp>(() => new Temp());
private Temp()
{
// create IDisposable objects which use native resources
}
public static Temp Instance
{
get
{
return instance.Value;
}
}
}