优雅的QSignleton (二) MonoSingleton单例实现
发表于2017-11-07
- MonoSingleton.cs
namespace QFramework.Example
{
using System.Collections;
using UnityEngine;
class Class2MonoSingleton : QMonoSingleton<Class2MonoSingleton>
{
public override void OnSingletonInit()
{
Debug.Log(this.name ":" "OnSingletonInit");
}
private void Awake()
{
Debug.Log(this.name ":" "Awake");
}
private void Start()
{
Debug.Log(this.name ":" "Start");
}
protected override void OnDestroy()
{
base.OnDestroy();
Debug.Log(this.name ":" "OnDestroy");
}
}
public class MonoSingleton : MonoBehaviour
{
private IEnumerator Start()
{
var instance = Class2MonoSingleton.Instance;
yield return new WaitForSeconds(3.0f);
instance.Dispose();
}
}
}
结果:
三秒之后,单例GameObject消失,并且触发了OnDestroy事件。
相关链接:
转载请注明地址:凉鞋的笔记
微信公众号:liangxiegame