예제 #1
0
        /// <summary>
        /// 网络上面有数据过来
        /// </summary>
        /// <param name="netState"></param>
        internal void OnReceive(NetState netState)
        {
            if (netState.InProcessQueue() == false)
            {
                return;
            }

            // 表示当前已加入在处理列表中(减少处理列表的长度)

            m_LockNetStateQueue.Enter();
            {
                m_NetStateQueue.Enqueue(netState);
            }
            m_LockNetStateQueue.Exit();

            Debug.Assert(m_World != null, "MessagePump.OnReceive(...) - m_World == null error!");

            // 有数据过来需要发送全局信号处理数据包
            if (m_World != null)
            {
                m_World.SetWorldSignal();
            }
        }
예제 #2
0
        /// <summary>
        /// 网络上面有数据过来
        /// </summary>
        /// <param name="netState"></param>
        internal void OnReceive( NetState netState )
        {
            if ( netState.InProcessQueue() == false )
                return;
           
            // 表示当前已加入在处理列表中(减少处理列表的长度)

            m_LockNetStateQueue.Enter();
            {
                m_NetStateQueue.Enqueue( netState );
            }
            m_LockNetStateQueue.Exit();

            Debug.Assert( m_World != null, "MessagePump.OnReceive(...) - m_World == null error!" );

            // 有数据过来需要发送全局信号处理数据包
            if ( m_World != null )
                m_World.SetWorldSignal();
        }