栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

C#静态构造函数线程安全吗?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C#静态构造函数线程安全吗?

在创建类的任何实例或访问任何静态成员之前,保证静态构造函数在每个应用程序域仅运行一次。https://docs.microsoft.com/zh-
cn/dotnet/csharp/programming-guide/classes-and-structs/static-
constructors

所示的实现对于初始构造是线程安全的,也就是说,构造Singleton对象不需要进行锁定或空测试。但是,这并不意味着实例的任何使用都将被同步。有很多种方法可以做到这一点。我在下面显示了一个。

public class Singleton{    private static Singleton instance;    // Added a static mutex for synchronising use of instance.    private static System.Threading.Mutex mutex;    private Singleton() { }    static Singleton()    {        instance = new Singleton();        mutex = new System.Threading.Mutex();    }    public static Singleton Acquire()    {        mutex.WaitOne();        return instance;    }    // Each call to Acquire() requires a call to Release()    public static void Release()    {        mutex.ReleaseMutex();    }}


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/367940.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号