This ... We should be ripe, no more ripe bugs, no more eggs.
private static Object Lockkey = new Object ();
private static T _instance;
public static T getinstance () {return getinstance (null);
public static T getinstance (func<t> oncreateinstance) {if (_instance = = null)
{Lock (Lockkey) {if (_instance = = null)
{try {if (oncreateinstance = null)
_instance = new T ();
else _instance = Oncreateinstance ();
catch {_instance = default (T);
}}} return _instance; public static T getinstance (Object lOckkey, T instance, func<t> oncreateinstance) {if (instance = null) {
if (Lockkey = = null) Lockkey = Lockkey; Lock (Lockkey) {if (instance = = null) {T ry {if (oncreateinstance = = null) ins
tance = new T ();
else Instance = Oncreateinstance ();
Catch {instance = default (T);
}}} return instance; }
Direct summary: A singleton pattern ensures that a class has only one instance and provides a global access point
See more highlights of this column: http://www.bianceng.cnhttp://www.bianceng.cn/Programming/project/
Author:cnblogs bugs that stay up late