Подтвердить что ты не робот

Как принудительно закрыть приложение на С#?

У меня есть многопоточное приложение С#, и у него есть блокиратор для чтения, но он дает исключение тайм-аута на некоторых компьютерах (не имея возможности получить блокировку во времени), и мне нужно принудительно закрыть все потоки. как мне это сделать без каких-либо дополнительных исключений?

4b9b3361

Ответ 1

Environment.FailFast может быть тем, что вы ищете, но позаботьтесь о побочных эффектах: никаких финализаторов, блоков или чего-либо еще else запускается. Это действительно завершает процесс СЕЙЧАС.

Ответ 2

Если вы хотите убить программу без каких-либо сообщений об исключениях из системы, после, например, фатальной ошибки, вы можете использовать:

Process.GetCurrentProcess().Kill()

Ответ 4

Чтобы принудительно выйти из приложения как можно скорее, вы можете использовать Environment.FailFast()

Ответ 5

Это может быть нерелевантный ответ, если вы ищете чистый код С# для завершения вашего приложения, но вы можете использовать системную собственную форму завершающих процессов, таких как команда taskkill, которая наверняка завершит ваше приложение.

Попробуй. Сначала добавьте ссылку на систему.

using System.Diagnostics;

Если вам нужно завершить процесс,

String process = Process.GetCurrentProcess().ProcessName;
Process.Start("cmd.exe", "/c taskkill /F /IM " + process + ".exe /T");
  • /F - Сила для завершения.
  • /T - завершает дерево процесса (процесс и любые другие запущенные им процессы).
  • /IM - Название изображения или имя процесса.