Ejemplo n.º 1
0
        internal void RaiseEvent(EventMessage msg)
        {
            if (EventReceived == null)
            {
                return;
            }
            var s = EventReceived.GetInvocationList().Select(p => p as Action <EventMessage>);

            foreach (var i in s.Where(p => p != null))
            {
                try
                {
                    i(msg);
                }
                catch (Exception e)
                {
                    Instance.LogError("イベント受信時イベントでエラーが発生しました\n" + e.Message);
                    Instance.SaveLog();
                }
            }
        }
Ejemplo n.º 2
0
        protected virtual void Dispose(Boolean disposing)
        {
            if (System.Threading.Interlocked.Exchange(ref disposed, 1) == 1)
            {
                return;
            }

            Unsubscribe();

            if (disposing)
            {
                foreach (var eh in EventHandled.GetInvocationList())
                {
                    EventHandled -= (EventHandler <BusEventArgs <TEvent> >)eh;
                }
                foreach (var eh in EventReceived.GetInvocationList())
                {
                    EventReceived -= (EventHandler <BusEventArgs <TEvent> >)eh;
                }
            }
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Releases unmanaged and - optionally - managed resources
        /// </summary>
        /// <param name="disposing"><c>true</c> to release both managed and unmanaged resources; <c>false</c> to release only unmanaged resources.</param>
        private void Dispose(Boolean disposing)
        {
            if (Interlocked.Exchange(ref disposed, 1) == 1)
            {
                return;
            }

            if (disposing)
            {
                Unsubscribe();

                foreach (Delegate d in EventHandled.GetInvocationList())
                {
                    EventHandled -= (EventHandler <BusEventArgs <TEvent> >)d;
                }
                foreach (Delegate d in EventReceived.GetInvocationList())
                {
                    EventReceived -= (EventHandler <BusEventArgs <TEvent> >)d;
                }
            }
        }