是否有类似Singleton的模式的实现,允许创建多个实例?
我的班级定义是:
public class Logger
{
private Logger(string logPath)
{
this.logPath = logPath;
}
/// <summary>
/// Creates singleton
/// </summary>
/// <param name="logPath"></param>
/// <returns></returns>
public static Logger GetInstance(string logPath)
{
lock (instanceLock)
{
if (logger == null)
{
logger = new Logger(logPath);
}
}
return logger;
}
public static Logger Instance()
{
return logger;
}
/// <summary>
/// Destructor
/// </summary>
~Logger()
{
try
{
this.Close();
}
catch (Exception)
{
}
}
}
Run Code Online (Sandbox Code Playgroud)
是否实现了类似Singleton的模式,允许创建多个实例.
如果你想要多个实例,只需允许直接构造类,而不是使它成为单例.在您的情况下,只需将构造函数设置为public,然后删除单例/实例逻辑.
话虽如此,还有Multiton模式,它允许通过单个接口对多个实例进行键控访问.
| 归档时间: |
|
| 查看次数: |
427 次 |
| 最近记录: |