namespace AlicizaX.Runtime { public sealed partial class EventPool where T : BaseEventArgs { /// /// 事件结点。 /// private sealed class EventNode : IMemory { private object _sender = null; private T _eventArgs = null; /// /// 发送者 /// public object Sender { get { return _sender; } } /// /// 事件参数 /// public T EventArgs { get { return _eventArgs; } } /// /// 创建事件节点 /// /// /// /// public static EventNode Create(object sender, T eventArgs) { EventNode eventNodeNode = MemoryPool.Acquire(); eventNodeNode._sender = sender; eventNodeNode._eventArgs = eventArgs; return eventNodeNode; } public void Clear() { _sender = null; _eventArgs = null; } } } }