设计模式
惊鸿一博
毕业于中国科学院大学/中科院自动化研究所;专注于SLAM,三维重建,图像处理,视觉定位等;曾就职于鸿海集团,大陆集团,现在某自动驾驶独角兽企业;热爱分享,热爱生活;欢迎一起交流,学习,进步。
展开
-
设计模式_单例模式回顾_C++版不使用锁保证多线程安全
最推荐的懒汉式单例(magic static )——局部静态变量说明:这种方法又叫做 Meyers' SingletonMeyer's的单例, 是著名的写出《Effective C++》系列书籍的作者 Meyers 提出的。所用到的特性是在C++11标准中的Magic Static特性:If control enters the declaration concurrently while the variable is being initialized, the concurrent ex原创 2021-01-03 18:08:55 · 415 阅读 · 0 评论 -
设计模式_单例模式回顾_C#版不使用锁保证多线程安全
说明采用加锁的方式,实现容易出错,效率也收到影响。所以考虑使用.Net的特性, 即: C#在调用静态构造函数时,初始化静态变量,.net可以保证只调用一次静态构造函数。从而保证只初始化一次实例instance。同时考虑到不过早的创建实例,实现按需创建实例,所以使用嵌套类,在类中再定义一个私有类型Nested,在该私有类型中调用它的静态构造函数创建实例instance。代码不使用锁保证多线程安全 public sealed class Singleton5 {原创 2021-01-03 16:25:34 · 328 阅读 · 0 评论