Server.Connector.connectoServer C# (CSharp) Méthode

connectoServer() public méthode

public connectoServer ( String ip, Int32 port, String name, String gametype ) : void
ip String
port System.Int32
name String
gametype String
Résultat void
        public void connectoServer(String ip, Int32 port, String name, String gametype)
        {
            tcpserver.Connect(ip, port);

            serverstream = tcpserver.GetStream();

            writeStream(serverstream, name);
            writeStream(serverstream, gametype);

            string read = readStream(serverstream, 100);

            string[] data = read.Split(';');

            playerip = data[0];
            clientport = int.Parse(data[1]);

            acceptconnectionthread = new Thread(() =>
            {
                IPAddress ipAddress = IPAddress.Parse(playerip);
                IPEndPoint localEndPoint = new IPEndPoint(ipAddress, clientport);
                listener.Bind(localEndPoint);
                listener.Listen(100);

                while (true)
                {
                    connectionDone.Reset();

                    listener.BeginAccept(
                        new AsyncCallback(AcceptCallback),
                        listener);

                    connectionDone.WaitOne();

                }
            });

            listenconnectionthread = new Thread(() =>
            {
                while(true)
                {
                    if (opponentsocket.Connected)
                    {
                        recieveDone.Reset();

                        StateObject state = new StateObject();
                        state.workSocket = opponentsocket;
                        opponentsocket.BeginReceive(state.buffer, 0, StateObject.BufferSize, 0,
                                        new AsyncCallback(ReadCallback), state);

                        recieveDone.WaitOne();
                    }
                }

            });

            acceptconnectionthread.Start();
            listenconnectionthread.Start();
        }