回答:
あなたが使用することができますEnvironment.Exit(0);
し、Application.Exit
Environment.Exit(0)
きれいです。
Environment.Exit
SecurityPermissionFlag.UnmanagedCode権限が必要です-これは一部の人にとって面倒かもしれません。
最も適切な方法の順序によるいくつかのオプション:
System.Environment.Exit
(移植不可!以下を参照)読みやすさを改善するために2013年9月に編集
特定の終了コードで戻る: Servyがコメントで指摘しているように、int
戻り値の型を使用してMainを宣言し、その方法でエラーコードを返すことができます。したがって、終了コードで終了する必要があり、Mainメソッドで終了できない場合を除き、 Environment.Exitを使用する必要はありません。ほとんどの場合、例外をスローし、未処理の例外がそこに伝播された場合にMainでエラーコードを返すことでそれを回避できます。アプリケーションがマルチスレッド化されている場合は、Exitコードで適切に終了するために、さらに多くのボイラープレートが必要になる可能性があるため、Environment.Exitを呼び出すだけの方がよいでしょう。
Evironment.Exit
マルチスレッドアプリケーションを作成している場合でも、使用のもう1つのポイントは再利用性です。関連Environment.Exit
性のない環境(Webサーバーで使用される可能性があるライブラリなど)でコードを再利用したい場合、コードは移植できません。私の意見では、最善の解決策は、メソッドが何らかのエラー/終了状態に達したことを表す例外や戻り値を常に使用することです。そうすれば、どの.NET環境でも、どのタイプのアプリケーションでも、常に同じコードを使用できます。終了コードを返す必要がある、または同様の方法で終了する必要のあるアプリを具体的に記述している場合Environment.Exit
は、次に進んでスレッドを最高レベルでラップし、必要に応じてエラー/例外を処理できます。
メイン機能の実行が完了すると、コンソールアプリケーションは終了します。「リターン」はこれを達成します。
static void Main(string[] args)
{
while (true)
{
Console.WriteLine("I'm running!");
return; //This will exit the console application's running thread
}
}
エラーコードを返す場合は、次の方法で行うことができます。これは、初期スレッドの外部の関数からアクセスできます。
System.Environment.Exit(-1);
あなたは使用することができるEnvironment.Exit(0)
とApplication.Exit
。
Environment.Exit()
:このプロセスを終了し、基になるオペレーティングシステムに指定された終了コードを提供します。