C#アプリケーションのデバッグ中に、次の文が大量に発生していることに気付きました。
スレッド-はコード0(0x0)で終了しました。
アプリケーションは引き続き機能し、例外がキャッチされたり手渡されたりすることはありません。
アプリケーションはWindows764ビットで実行されており、x86プラットフォームでデバッグされています。
これは単なるデバッグメッセージです。出力ウィンドウを右クリックしてチェックを外すと、オフに切り替えることができますThread Exit Messages
。
http://msdn.microsoft.com/en-us/library/bs4c1wda.aspx
アプリケーションからプログラムアウトすることに加えて、出力ウィンドウには以下に関する情報を表示できます。
デバッガーがロードまたはアンロードしたモジュール。
スローされる例外。
終了するプロセス。
終了するスレッド。
ええと、アプリケーションは並行して実行されている多くのスレッドを持っているかもしれません。いくつかはあなた、コーダーによって実行され、いくつかはフレームワーククラスによって実行されます(特にあなたがGUI環境にいる場合)。
スレッドがタスクを終了すると、スレッドは終了し、存在しなくなります。つまり、これには何も憂慮すべきことはなく、気にする必要はありません。
BlueMの承認された回答を完了するために、ここで非アクティブ化できます。
ツール>オプション>デバッグ>一般的な出力設定>スレッド終了メッセージ:オフ
アプリケーションが直接または間接的にスレッドを使用する場合(つまり、サードパーティのライブラリのように舞台裏で)、スレッドが完了した後にスレッドを終了させることは絶対に一般的です...これは基本的にあなたが説明することです...デバッガーはこのメッセージを表示します...必要がない場合は、このメッセージを表示しないようにデバッガーを構成できます...
上記が役に立たない場合は、あなたが直面している問題が正確に何であるかわからないので、詳細を提供してください...
フレームワークは、フォームを作成して.Show()する場合など、作成する各ウィンドウをサポートするスレッドを作成します。ウィンドウが閉じると、スレッドは終了します(つまり、スレッドは終了します)。
これは正常な動作です。ただし、アプリケーションがスレッドを作成していて、これらのスレッドに対応するスレッド終了メッセージが多数ある場合(アプリでスレッドの名前を指定することで、スレッドの名前でわかる可能性があります)、おそらくこれは問題を示していますプログラムのロジックエラーが原因で、アプリがスレッドを作成すべきでないときにスレッドを作成します。
サーバーのクラッシュの問題に関して彼/彼が発見したことを元のポスターに知らせてもらうことは興味深いフォローアップになるでしょう。これとは何の関係もない気がしますが…投稿された情報からはわかりづらいです。
Linqクエリを実行すると、余分なスレッドが生成される可能性があります。即時ウィンドウでLinqクエリコレクションを使用するコードを実行しようとすると、デバッガーで使用できるスレッドが不足しているため、実行を拒否することがよくあります。
他の人が言っているように、スレッドが終了したときに終了するのは完全に正常です。
このエラーを停止するには、この簡単な手順に従う必要があります
次に、ショートカットキーCtrl+f5を使用してコードを実行します
**それ以外の場合は、直接実行するとエラーが表示されます
私もこの問題に直面しており、解決策は次のとおりです。
このコードを再度追加すると、プログラムは正確に実行されました。
Application.Run(new PayrollSystem());
//File name this code removed by me accidentally.