Esempio n. 1
0
 public void AddEvent(SafeEvent s_event)
 {
     lock (m_SyncCs)
     {
         m_SafeEvents.Enqueue(s_event);
     }
 }
Esempio n. 2
0
        protected virtual void OnConnected()
        {
            var client = Client;

#if !__IOS__
            if (client != null)
            {
                if (client.NoDelay != NoDeplay)
                {
                    client.NoDelay = NoDeplay;
                }
            }
#endif

            IsConnected = true;

            var handler = m_Connected;
            if (handler == null)
            {
                return;
            }

            if (!IsSyncConnect && IsNeedSafeEvent)
            {
                SafeEvent safe_event = new SafeEvent();
                safe_event.type = EventType.ET_Connected;
                safe_event.args = EventArgs.Empty;
                AddEvent(safe_event);
                return;
            }
            handler(this, EventArgs.Empty);
        }
Esempio n. 3
0
        protected virtual void OnReceiveThreadExit(Exception e)
        {
            var handler = m_ReceiveThreadExit;

            if (handler == null)
            {
                return;
            }

            if (!IsSyncConnect && IsNeedSafeEvent)
            {
                SafeEvent safe_event = new SafeEvent();
                safe_event.type = EventType.ET_RecvTheadExit;
                safe_event.args = new ErrorEventArgs(e);
                AddEvent(safe_event);
                return;
            }
            handler(this, new ErrorEventArgs(e));
        }
Esempio n. 4
0
        protected virtual void OnError(Exception e)
        {
            var handler = m_Error;

            if (handler == null)
            {
                return;
            }

            if (IsNeedSafeEvent)
            {
                SafeEvent safe_event = new SafeEvent();
                safe_event.type = EventType.ET_Error;
                safe_event.args = new ErrorEventArgs(e);
                AddEvent(safe_event);
                return;
            }
            handler(this, new ErrorEventArgs(e));
        }
Esempio n. 5
0
        protected virtual void OnClosed()
        {
            IsConnected = false;

            var handler = m_Closed;

            if (handler == null)
            {
                return;
            }

            if (IsNeedSafeEvent)
            {
                UnityEngine.Debug.Log("----bbbb-------------");

                SafeEvent safe_event = new SafeEvent();
                safe_event.type = EventType.ET_Closed;
                safe_event.args = EventArgs.Empty;
                AddEvent(safe_event);
                return;
            }
            handler(this, EventArgs.Empty);
        }
Esempio n. 6
0
        protected virtual void OnDataReceived(byte[] data, int offset, int length)
        {
            var handler = m_DataReceived;

            if (handler == null)
            {
                return;
            }

            m_DataArgs.Data   = data;
            m_DataArgs.Offset = offset;
            m_DataArgs.Length = length;

            if (IsNeedSafeEvent)
            {
                SafeEvent safe_event = new SafeEvent();
                safe_event.type = EventType.ET_DataReceived;
                safe_event.args = m_DataArgs;
                AddEvent(safe_event);
                m_DataArgs = new DataEventArgs();
                return;
            }
            handler(this, m_DataArgs);
        }