C#一种最简单实用安全的单例模式,也是线程安全的
public class Aclass { //1,readonly,杜绝外部销毁:Aclass.get = null //在大型项目中,单例销毁与重生很容易造成【同一单例不同实例】,从而引起各种诡异的BUG //究其原因还是开发者偷懒,想通过销毁单例确保【销毁单例内的所有引用】,害怕不销毁单例就清除不干净外部引用,这种思想是不对的, //正确做法应该是:永远不销毁单例,在需要清空资源时,从单例内部清空对外的所有引用 public static readonly Aclass get = new Aclass(); Aclass() {//2,私有化构造函数,杜绝外部使用 } }
另外,常见单例的几种写法,参考:https://www.cnblogs.com/leolion/p/10241822.html