namespace GFramework.framework.events;
///
/// 取消注册列表类,用于管理多个需要取消注册的对象
///
public class UnRegisterList : IUnRegisterList
{
private readonly List _unRegisterList = [];
///
/// 向取消注册列表中添加一个新的可取消注册对象
///
/// 需要添加到列表中的可取消注册对象
public void Add(IUnRegister unRegister)
{
_unRegisterList.Add(unRegister);
}
///
/// 对列表中的所有对象执行取消注册操作,并清空列表
///
public void UnRegisterAll()
{
// 遍历所有注册项并执行取消注册
foreach (var t in _unRegisterList)
{
t.UnRegister();
}
// 清空列表
_unRegisterList.Clear();
}
///
/// 获取取消注册列表的只读属性
///
public List UnregisterList { get; }
}