“`” 1、单例模式
在软件系统中,经常有这样一些特殊的类,必须保证它们在系统中只存在一个实例,才能确保它们的逻辑正确性、以及良好的效率。保证一个类仅有一个实例,并提供一个该实例的全局访问点。
(1)经典模式–单线程
对于线程来说不安全;但在单线程中已满足要求。
<img alt=""img"" referrerpolicy=""no-referrer"" src=""http://res.mianshigee.com/upload/article/v2-bec678b8ab83fa1090bf12783abcf929_hd.jpg"">
(2)懒汉模式–多线程
多线程安全;线程不是每次都加锁,节省了性能开销。
<img alt=""img"" referrerpolicy=""no-referrer"" src=""http://res.mianshigee.com/upload/article/v2-b82bcc3af92c6981561a9dce5a446758_hd.jpg"">
(3)饿汉模式–多线程
利用静态变量去实现单例,由CLR保证,在程序第一次使用该类之前被调用,而且只调用一次;饿汉模式中的静态变量是随着类加载时被完成初始化的,静态代码块也会随着类的加载一块执行,哪怕你一直没有调用。
<img alt=""img"" referrerpolicy=""no-referrer"" src=""http://res.mianshigee.com/upload/article/v2-8737773daac41e12c754add9171e49fe_hd.jpg"">
<pre><code> "“`
Was this helpful?
0 /
0