c#线程异常错误

本文关键字:错误 异常 线程 | 更新日期: 2023-09-27 17:51:15

我正在c#中工作,并在一组服务器代码中添加线程。它所做的是接受任何客户端,如果有任何挂起的连接,然后创建一个客户端句柄线程来处理来自客户端的消息。

问题是当客户端连接并创建线程时,我的代码抛出异常。我已经调试了它,知道它是线程本身,但我不知道为什么。我认为我处理得很好。代码工作不处理线程,所以我不确定什么是错的:快速提示:netttcp_acpt是一个列表和netttcp_third是一个列表<线程> .

        try {
            if ( NetTcp_Sock.Pending() == true ) {
                //Asynchronously accept the client;
                TcpClient myClient = await NetTcp_Sock.AcceptTcpClientAsync();
                NetTcp_Acpt.Add( myClient );
                int myID = NetTcp_Acpt.Count;
                //Create new thread to handle client data;
                Thread myThread = new Thread( () => Net_Handle( myClient , Convert.ToString( myID ) , myID ) );
                myThread.Name = Convert.ToString( myID );
                NetTcp_Thrd.Add( myThread );
                myThread.Start();
                Console.WriteLine( "Client: " + Convert.ToString( myID ) + " connected!" );
            }
        } catch( Exception ex ) {
            //NOTE:Exception always thrown, result of: Client Threads on lines 31 to 34;
            //Excepion needs fixing;
            Console.WriteLine( ex.ToString() );
        }

c#线程异常错误

确保在添加客户端之前已经初始化了NetTcp_Acpt集合。

初始化的意思是:

NetTcp_Acpt = new System.Collections.Generic.List<TcpClient>();