0

アプリケーションを閉じると、次の例外が発生します。

ここに画像の説明を入力

これはその時点でのスタック トレースです。

ここに画像の説明を入力

これがその時のスレッド一覧です。

ここに画像の説明を入力

ここで何が起こっているのかを正確に判断するのは難しいと思います。スタックは、データベース エンジン (Pervasive) が通信を試みていることを示唆していますが、「GC Finalizer Thread」であるスレッドは奇妙に見えます。

何かが使用しようとしているために何が処分されたのか正確にはわかりません。ネットワークソケット?データベース接続?どうすればわかりますか?

他の誰かが以前にここに来たことがあるか、またはそれらの画像で私が理解していない何かを見たことがあることを願っています.

4

1 に答える 1

1

コメントする必要がありますが、適合しません。つまり、アプリケーション コードは現時点で終了したとおっしゃいました。ほとんどの場合、実行中のアプリケーションが終了していることを意味します。保留中のすべてのファイナライザーが実行され、リソースがクリーンアップされます (もちろん、それらのファイナライザーを宣言する型を持つオブジェクトの場合)。これらのファイナライザーの 1 つで (ここに GC.FinalizerThread が表示されているのはそのためです)、何かがデータベースにデータを書き込もうとします (トラック トレースの SqlClient はそれがデータベースであることを示唆し、NetworkStrem.Write はそれが書き込みであることを示唆しています) が、接続ははすでに閉じられているため、この例外が表示されます。

于 2016-10-06T12:10:22.550 に答える