プログラムはC++onX86_64 Linux 2.6.32.12で書かれており、2 つのケースがあり、1 つのケースでは、挿入されたファイルごとに 1 つのファイルが生成され、 を介して送信されUDP(Version A)ます。別のケースではファイルが生成されず、注入されたファイルを直接 経由で送信しますUDP(Version B)。
===============VersionA統計グラフ==========================
http://i .stack.imgur.com/8bxI5.png

================VersionB Statictic Graphic===========================
http:// i.stack.imgur.com/wEnKc.png

これら 2 つのケースを使用してvalgrind確認しましたが、レポートは同じで、メモリ リークは見られません。これは、Linux カーネルのメモリ マッピングが原因ですか? テスト マシンには64Gメモリがあります。これmemory leakですか?
更新情報:
では、元のファイルの内容を別のアプリケーションに送信し、処理結果を受け取って必要なファイルを生成するために使用しますVersion A。UNIX socket図が示すように、物理メモリが増加します。私は別のケースを試しました.Unixソケットを介してファイルを送信せず、system関数を使用し、別のアプリケーションを呼び出して必要なファイルを生成しました.メモリが増加しないことが示されています. 新しく生成されたファイルは問題ではないようです。Unix ソケットが原因です。私たちはソケットプールを使用し、私は使用lsofします。余分なソケットは開かれていません。Unix socketメモリを占有しますか?