システムwiki

ctfmon.exeの大量のメモリリーク.

HussamA 受付中 最終更新日:2020-09-29 17:20

こんにちは.ctfmon.exeのメモリ使用量は、24時間ごとに約25~30MB増加します.

何が起こっているのかを知る方法はありますか?

Windows 1018362

返信リスト(回答:13)

1 #
HussamA
これに関して誰でも考えがありますか?
2 #
FelixKa

Windows 101803およびWindows 10LTSC 1809で同じ問題が発生しました.5日後にCTFMON.EXEが最大27 GBになり、他のApplicationがメモリ不足になりました問題.システムには32 GBのシステムメモリが搭載されていました.

Applicationをデバッグしたところ、問題が発生しました.CTFMON.EXEは、Applicationがキーボードフォーカスを設定するたびに少し大きくなります.

単純なループにより、CTFMON.EXEのCPU使用率が高くなり、大量のメガバイトのメモリ使用量が増加します.

for(int i=0; i<1000; i ++)
{
AfxGetMainWnd()->SetFocus();
AfxPumpMessage();
}

間違いなくバグがあります.

応答2# ->にスキップ
3 #
HussamA
これをテストケースでマイクロソフトに報告する方法は?
応答3# ->にスキップ
4 #
FelixKa

わかりません.Visual Studio 2019コミュニティを使用して、自宅でこの問題についてさらに調査を行いました.そこで、単純なボタンクリックハンドラーにコードスニペットを配置しました.単純なMFCダイアログベースのテストで使用した場合、メモリリークは発生しませんでした.
Application.しかし、それはMDIApplicationで発生しました.

1か月前に、1809versionのいくつかの基本的なWindows機能の別のバグを認識しました.kernel32.dllには、「Atomtable」にアクセスするための関数があります.関数「GlobalAddAtom」が突然「リソース不足」エラーを報告し始めましたが、それは****でした.後
関数がそのエラーを返し始め、クリップボードが機能しなくなりました.Firefoxは起動後に黒いwindows コンテンツしか取得しませんでした.他のApplicationがクラッシュしました.「フィードバックハブ」を使用してその問題を報告しましたが、応答がありませんでした.月後、問題
消えました.

そのため、そのような問題を報告するための正しい方法は何なのかわかりません.

応答4# ->にスキップ
5 #
HussamA

私はまた、8月またはおそらく7月にフィードバックハブで問題を報告しましたが、返信も受け取りませんでした.

私はWindowsにそれほど詳しくありません.

これがLinuxおよびオープンソースソフトウェアの場合、使用されたdllの1つがリークの原因または誤用の原因であると想定してvalgrindを実行し、問題を見つけて修正します.

Windowsでは、私は基本的に迷っています.

応答5# ->にスキップ
6 #
HussamA

Felix、ここにフィードバックレポートを宣伝してください.フィードバックリンクを共有してください.

リンク:AA6EVG9.

私は、上向きに翻訳し、これがマイクロソフトエンジニアに達する可能性を高めることが指示されました.

応答6# ->にスキップ
7 #
FelixKa 1

遅れてすみません.職場ではフィードバックハブにアクセスできないため、自宅でこれを行う必要がありました.

フィードバックハブから、リンクのフィードバックアイテムにアクセスできないと通知されました.Windows 10Home 1903のVisual Studio 2019 at Homeで別のテストを実行しました.プロジェクトウィザードを使用して、SDI(シングルドキュメントインターフェイス)のMFCプロジェクトを作成しました
デフォルトで提供されるaboutボックスを開くときに、4行だけを追加しました.10.000回の反復でテストを行ったところ、CTFMON.EXEがコミットされたメモリを14MBから134MBに拡大しました.そのため、フィードバックハブを使って自分でその問題を報告するようにします.

応答7# ->にスキップ
8 #
HussamA
ありがとうございました.フィードバックレポートのリンクを共有してください.
応答8# ->にスキップ
9 #
FelixKa
さて、試してみてください. リンク:AA6I53Q
応答9# ->にスキップ
10 #
HussamA

フィードバックレポートにアクセスする権限もないようです.

すみません.

タイトルは何ですか.おそらく手動で検索できます.

応答10# ->にスキップ
11 #
FelixKa

タイトルは:「CTFMON.EXEの高メモリリーク」

問題を再現するためのサンプルプロジェクトも添付しました.

応答11# ->にスキップ
12 #
HussamA

見つかりません.しかし、おそらくマイクロソフトの誰かがあなたのフィードバックレポートを見つけて問題を修正するかもしれません.返信があったら、更新してください.

ありがとうございます!

応答12# ->にスキップ
13 #
FelixKa
その問題をフィードバックハブに投稿した後、「GlobalAddAtom」(kernel32.dll)に関して報告された他の問題について簡単なチェックを行いました.返事が来ない.影響を受けるカーネルをクリーンアップするためにWindowsを再起動する必要があるたびに、その問題は非常に迷惑でした
構造.最後の発生は今年の3月/4月頃でした.たぶん、Microsoftの開発チームの誰かがversion1803と1809の間でkernel32.dllの変更を比較し、静かに修正しました.再現する方法がわかりませんでした.しかし、今回は
完全に機能する例.そう[であることを]祈りましょう.