我正在尝试解决一个不太清楚的问题。当调用 Environment.Exit(0)
时,关闭应用程序需要约22秒钟。
if (AppDomain.CurrentDomain.IsDefaultAppDomain())
{
Environment.Exit(exitCode);
}
你有没有想过背后正在发生什么?我认为可能是一个异常被抛出,但我已经检查了异常对话框中的所有复选框。
我正在尝试解决一个不太清楚的问题。当调用 Environment.Exit(0)
时,关闭应用程序需要约22秒钟。
if (AppDomain.CurrentDomain.IsDefaultAppDomain())
{
Environment.Exit(exitCode);
}
你有没有想过背后正在发生什么?我认为可能是一个异常被抛出,但我已经检查了异常对话框中的所有复选框。
Environment.Exit
。只需确保所有线程都干净、安全地完成,然后像平常一样退出(例如,在你的 Main
方法中使用 return;
或关闭 Windows 窗体应用程序的主窗体)。 - LuaanEnvironment.Exit
的理由。您可以从 Main 中返回,或者关闭 WinForms 应用程序的主窗体(如前所述),整个应用程序将关闭 - 如果没有关闭,则刚刚发现了线程关闭中的错误 :) Environment.Exit
有一种隐藏此类错误的恶劣方式 - 它甚至可以在 finally
语句中间轻松终止线程。它本质上是不安全的 - 它破坏了您与 .NET 之间的许多协议。 - Luaan
Environment.Exit
。 - Luaan