Singleton VS静态类,性能明智吗?

时间:2017-10-12 06:40:37

标签: c# xamarin.forms

我经常遇到制作单例或静态类来存储我的应用程序运行时数据的困境。

让我们说

public static class DataManager
{
    public static int a = 0;
    public static int b = 0;
    public static int c = 0;
}

这允许我只调用DataManager.a

    public class DataManager
    {

      private static DataManager _sharedInstance = new DataManager();

        static internal DataManager SharedInstance()
        {
            return _sharedInstance;
        }

        public int a = 0;
        public int b = 0;
        public int c = 0;
}

在此调用中,我必须调用DataManager.SharedInstance()。a

两种方式都有效。但是我想知道哪个更适合我的应用程序的内存和性能。假设我的数据很大并且包含许多其他集合。

提前致谢。

1 个答案:

答案 0 :(得分:1)

显然,第一种方法更简单,更短 - 无论是阅读还是性能和内存方面。

在第二个代码中,两个额外的构造将导致一些开销。