示例#1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="socketObject"></param>
        /// <param name="data"></param>
        public void PushSend(SocketObject socketObject, byte[] data)
        {
            var e = _readWritePool.Pop();

            e.AcceptSocket = socketObject.Connection;
            DataToken token = (DataToken)e.UserToken;

            token.Socket = socketObject;
            _saeaProxy.Send(e, data);
        }
示例#2
0
        private void StartReceive()
        {
            socketObject.Init();
            socketObject.LastAccessTime = DateTime.Now;
            if (ConnectCompleted != null)
            {
                ConnectCompleted.BeginInvoke(new SocketProcessEventArgs()
                {
                    Socket = socketObject
                }, null, null);
            }
            _saeaReceive = _readWritePool.Pop();
            _saeaReceive.AcceptSocket = socketObject.Connection;
            ((DataToken)_saeaReceive.UserToken).Socket = socketObject;

            _saeaSend = _readWritePool.Pop();
            _saeaSend.AcceptSocket = socketObject.Connection;
            ((DataToken)_saeaSend.UserToken).Socket = socketObject;

            _saeaProxy.StartReceive(_saeaReceive);
        }