예제 #1
0
        public void stopServer()
        {
            stopServerThread();

            if (myServerThread != null)
            {
                if (myServerThread.IsAlive)
                {
                    myServerThread.Abort();
                    serverFlg = false;
                    myServerThread.Join();
                    Console.WriteLine("stop myServerThread");
                }
                myServerThread = null;
            }

            if (clientThread != null)
            {
                if (clientThread.IsAlive)
                {
                    client.stopReadThread();
                    clientThread.Abort();
                    clientThread.Join();
                }
                clientThread = null;
            }

            if (client != null)
            {
                client.stopReadThread();
            }
            client = null;
        }
예제 #2
0
 private void ServerThread()
 {
     try
     {
         while (serverFlg == true)
         {
             Console.WriteLine("ServerThread");
             // ソケット接続待ち
             if (listener.Pending()) //接続待ちがあれば
             {
                 TcpClient myTcpClient = listener.AcceptTcpClient();
                 // クライアントから接続有り
                 //if(myTcpClient)
                 // クライアント送受信オブジェクト生成
                 client        = new ClientTcpIp();
                 client.objSck = myTcpClient;
                 client.objStm = myTcpClient.GetStream();
                 // クライアントとの送受信開始
                 client.readFlg = true;
                 if (serverFlg == true)
                 {
                     clientThread = new Thread(
                         new ThreadStart(client.ReadWrite));
                     clientThread.Start();
                 }
             }
         }
         Console.WriteLine("STOP Server");
     }
     catch { }
 }
예제 #3
0
파일: tcp.cs 프로젝트: ekusy/Serial_test
        private void ServerThread()
        {
            try
            {
                while (serverFlg == true)
                {
                    Console.WriteLine("ServerThread");
                    // ソケット接続待ち
                    if (listener.Pending()) //接続待ちがあれば
                    {
                        TcpClient myTcpClient = listener.AcceptTcpClient();
                        // クライアントから接続有り
                        //if(myTcpClient)
                        // クライアント送受信オブジェクト生成
                        client = new ClientTcpIp();
                        client.objSck = myTcpClient;
                        client.objStm = myTcpClient.GetStream();
                        // クライアントとの送受信開始
                        client.readFlg = true;
                        if (serverFlg == true)
                        {
                            clientThread = new Thread(
                                    new ThreadStart(client.ReadWrite));
                            clientThread.Start();
                        }
                    }

                }
                Console.WriteLine("STOP Server");
            }
            catch { }
        }
예제 #4
0
파일: tcp.cs 프로젝트: ekusy/Serial_test
        public void stopServer()
        {
            stopServerThread();

            if (myServerThread!= null)
            {
                if (myServerThread.IsAlive)
                {
                    myServerThread.Abort();
                    serverFlg = false;
                    myServerThread.Join();
                    Console.WriteLine("stop myServerThread");
                }
                myServerThread = null;
            }

            if (clientThread != null)
            {
                if (clientThread.IsAlive)
                {

                    client.stopReadThread();
                    clientThread.Abort();
                    clientThread.Join();
                }
                clientThread = null;
            }

            if (client != null)
                client.stopReadThread();
            client = null;
        }