Пример #1
0
        public void Start_Receive(Playertoken token)
        {
            /*
             * 받기 시작
             */

            bool pending = socket.ReceiveAsync(token.receive_eventargs);

            if (!pending)
            {
                Receiving(null, token.receive_eventargs);
            }
        }
Пример #2
0
        private void connect_complete(object sender, SocketAsyncEventArgs e)
        {
            Playertoken          token          = new Playertoken();
            SocketAsyncEventArgs Sendersocket   = makeSender();
            SocketAsyncEventArgs Receiversocket = makeReceiver();

            token.setSocketAsyncEventArgs(Receiversocket, Sendersocket);
            token.setSocket(this.socket);

            Sendersocket.UserToken   = token;
            Receiversocket.UserToken = token;

            if (callback_connected != null)
            {
                callback_connected(token);
            }
        }
Пример #3
0
        private void Receiving(object sender, SocketAsyncEventArgs e)
        {
            Playertoken token = e.UserToken as Playertoken;

            if (e.SocketError == SocketError.Success)
            {
                token.receive();
                bool pending = token.socket.ReceiveAsync(e);
                if (!pending)
                {
                    Receiving(null, e);
                }
            }
            else
            {
                token.peer.disconnected();
            }
        }
Пример #4
0
        private void Sending(object sender, SocketAsyncEventArgs e)
        {
            Playertoken token = e.UserToken as Playertoken;

            token.Sending(e);
        }
Пример #5
0
 public void setToken(Playertoken playertoken)
 {
     this.token = playertoken;
 }