Пример #1
0
    /// <summary>
    /// 向所有注册的接收器分发指定信号
    /// </summary>
    /// <param name="nSignalID">消息ID</param>
    /// <param name="oSender">消息发送者</param>
    /// <param name="oParam">消息参数</param>
    public void DispatchSignal(SignalID nSignalID, object oSender, object oParam = null)
    {
        if (!this.m_HandlerMap.ContainsKey(nSignalID))
        {
            return;
        }

        var m = new _Signal()
        {
            ID     = nSignalID,
            Sender = oSender,
            Param  = oParam
        };

        this.m_SignalQueue.Enqueue(m);
    }