private bool TryKillClient() { const int MAX_ATTEMPTS = 5; for (var attempt = 1; attempt <= MAX_ATTEMPTS; attempt++) { logger.Info($"Attempt {attempt}/{MAX_ATTEMPTS} to kill client process with ID = {ClientProcess.Id}."); if (ClientProcess.TryKill(500)) { break; } } if (ClientProcess.HasTerminated) { logger.Info("Client process has terminated."); } else { logger.Error($"Failed to kill client process within {MAX_ATTEMPTS} attempts!"); } return(ClientProcess.HasTerminated); }