记录一些比较好的文章
首先有个前提条件,双IF加lock是对多线程而言的
https://www.cnblogs.com/nzbbody/archive/2011/12/29/2306154.html //概念
https://blog.csdn.net/sinat_20559947/article/details/48311915 //功能
双重检查锁定应用在单例模式
https://www.cnblogs.com/zhili/p/SingletonPatterm.html
lock 关键字可以用来确保代码块完成运行,而不会被其他线程中断。这是通过在代码块运行期间为给定对象获取互斥锁来实现的。
提供给 lock 关键字的参数必须为基于引用类型的对象,该对象用来定义锁的范围。
msdn 线程同步中lock解释
https://docs.microsoft.com/zh-cn/previous-versions/visualstudio/visual-studio-2008/ms173179(v=vs.90)