コンソールアプリケーションを終了するためのC#のコマンドは何ですか?
Environment.Exit(0);
とApplication.Exit
を使うことができます
Environment.Exit(0)
はきれいです 。
最も適切な方法でのいくつかのオプション:
System.Environment.Exit
(は移植性がありません。下記を参照してください)読みやすくするために2013年9月に編集
特定の終了コードで戻る:Servyがコメントで指摘しているように、Mainをint
戻り型で宣言し、そのようにエラーコードを返すことができます。そのため、Environment.Exit exceptを使う必要は本当にありません。終了コードで終了する必要があり、Mainメソッドでそれを実行することはできません。たぶん、あなたは例外を投げ、未処理の例外がそこに伝播するならばエラーコードをMainに返すことによってそれを避けることができます。アプリケーションがマルチスレッドの場合は、終了コードで適切に終了するためにさらに定型句が必要になる可能性があるので、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()
:このプロセスを終了して、基盤となるオペレーティングシステムに指定された終了コードを渡します。