private void ChatClient_ClientDisconected(ClientConnect client) { client.Disconnect(); client.Dispose(); lock (clientLocker) { clients.Remove(client); } }
private bool disposedValue = false; // To detect redundant calls protected virtual void Dispose(bool disposing) { if (!disposedValue) { if (disposing) { // TODO: dispose managed state (managed objects). client.CommandRecived -= this.Client_CommandRecived; client.Dispose(); waitAnswer.Dispose(); manualResetEvent.Dispose(); } // TODO: free unmanaged resources (unmanaged objects) and override a finalizer below. // TODO: set large fields to null. disposedValue = true; } }