单例模块

2019-12-16  本文已影响0人  OnClick9927

和QFramework的单例类似:属于借鉴和个性化
QFramework
使用起来很简单
纯C#版本使用示例

        public class CS_single : Singleton<CS_single>
        {
        }

Unity(Mono)版本使用示例

        public class Mono_single : MonoSingleton<Mono_single>
        {
        }

个性化:
单例多了,不便于管理
所以诞生出一个单例池子(用于收集所有的单例)

    public static class SingletonCollection
    {
        public static void Dispose<T>() where T : ISingleton;
        public static void Dispose();
        public static void Set<T>(T singleton) where T : ISingleton;
    }

只用调用 SingletonCollection.Dispose<T>();就可以销毁对应单例(不推荐)
只用调用 SingletonCollection.Dispose();就可以销毁所有单例(最终结束时候调用即可)
Set方法不用自己调用,单例被创建时候会自动调用

上一篇 下一篇

猜你喜欢

热点阅读