“`” 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

发表回复 0

Your email address will not be published.