管理されていないC++dllを使用する.NETWindowsサービスを構築しています。私のサービスとc++dllの両方がマルチスレッドを使用しています。処理中にしばらく(数時間)メモリが不足しています。「パフォーマンスカウンター」を使用してスレッド数を測定しようとしましたが、次の値を監視しています。
# of current logical Threads
# of current recognized threads
# of total recognized Threads
最初のものは安定していてその値は妥当ですが、2番目と3番目はそうではありません。それらは常に成長し、膨大な数(1500以上)に達しています。そして、それらは等しいです!!!!
それらは等しくなければなりませんか?また、これらのカウンターがマネージスレッドとアンマネージスレッドの両方をカウントするかどうかも、このページからはわかりませんでした。
アンマネージコードは、常に新しいスレッドを再利用するのではなく起動しているのではないかと思いますが、よくわかりません。
誰か助けてもらえますか?ありがとう