Как отловить поток который грузит проц? - C#

Узнай цену своей работы

Формулировка задачи:

Написал простенький асинхронный сервер , сейчас отлаживаю и убираю косяки. Заметил такую фишку , что при отключении клиента , приложение - сервер продолжает грузить проц на 100% каким то потоком (самостоятельно я потоков никаких не создаю)
 private void ReceiveCallbackCmd(IAsyncResult result)
        {
            ConnectionInfo connection = (ConnectionInfo)result.AsyncState;
            try
            {
                int bytesRead = 0;
                if (connection.Socket.Connected) bytesRead = connection.Socket.EndReceive(result);
                                                
                if (bytesRead > 0)
                {
                   // connection.Socket.BeginReceive(connection.Buffer, 0, connection.Buffer.Length, SocketFlags.None, new AsyncCallback(ReceiveCallback), connection);
                }
                else { CloseConnection(connection); return; }
            }
            catch (Exception Er) { this.ErrorLog = Er.Message + " -ReceiveCallback"; CloseConnection(connection);  return; }
        }
private void CloseConnection(ConnectionInfo connections)
        {
            try
            {
 
                lock (_connections)
                {
                    if (connections.Socket.Connected)
                    {
                        this.ServerLog = "Отключение: " + GetDNS(connections.Socket.RemoteEndPoint) + " - " + DateTime.Now;
                        connections.Socket.Shutdown(SocketShutdown.Both);
                        connections.Socket.Close();
                        if (_connections.Contains(connections)) _connections.Remove(connections);
                    }
                }
            }
            catch (Exception Er) { this.ErrorLog = Er.Message + " -CloseConnection()"; }
        }
Подскажите как отловить этот косяк ибо исключений никаких не возникает
Гуру подскажите куда копать , пробовал слипы вставлять в колбеки безрезультатно , фоновый поток(и) забирают все свободные ресурсы проца , причем все работает корректно

Решение задачи: «Как отловить поток который грузит проц?»

textual
Листинг программы
Socket clientSocket = socket.EndAccept(ar);
socket.BeginAccept();
// создаем буферы
// делаем проверки

Оцени полезность:

5   голосов , оценка 4.2 из 5
Похожие ответы