C#在单例的枚举成员变量上设置值,滞后于Unity编辑器

时间:2017-01-12 11:22:09

标签: c# unity3d enums singleton unity5

我有一个用静态实例变量方法实现的单例。 当我设置其中一个enum类型的成员变量时,编辑器会滞后,每次发生这种情况时我都必须强行退出。

public class SharedData {

    private static SharedData m_onlyInstance = null;


    public int a,b,c;
    public ESampleType eType = ESampletype.Default;


    public static SharedData Instance {
        get {
            if (m_onlyInstance == null) {
                m_onlyInstance = new SharedData();
            }
            return m_onlyInstance;
        }
    }
    //other codes...
}

public class TestClass : MonoBehaviour {

    [SerializeField]
    Slider m_sliderTest;

    public void onStartBtn(){

        Debug.Log("---START---");

        SharedData data = SharedData.Instance;

        ESampleType eType = (ESampleType)(int)m_sliderTest.value;

        data.a = 1;
        data.eType = eType;  //***when I commented this line, the lag disappear.
        data.b = 2;
        data.c = 3;

        Debug.Log("---END---");

    }
    //other codes...
}

此外,当有问题的行存在时,日志"---START---""---END---"将不会显示。似乎编译得不好。这很奇怪!

这是对C#的限制吗?请帮我解决这里发生的事情。我需要解决这个问题。

我的Unity编辑器版本为5.4.1.40776

0 个答案:

没有答案