fdopenを使用してストリームを開いたファイルに関連付けます。fdopen()でメモリリークが発生する可能性がありますか?
私がclose()
ファイルをダウンロードすると、自動的に関連付けが解除され、すべてのストリームメモリがOSに返されるか、fdopenされたファイルを認識して特定の方法で閉じる必要がありますか?
-Adam
fdopenを使用してストリームを開いたファイルに関連付けます。fdopen()でメモリリークが発生する可能性がありますか?
私がclose()
ファイルをダウンロードすると、自動的に関連付けが解除され、すべてのストリームメモリがOSに返されるか、fdopenされたファイルを認識して特定の方法で閉じる必要がありますか?
-Adam
close()
は、システムコールです。これはカーネルのファイル記述子を閉じますが、FILEポインタとlibcのリソースを解放しません。代わりにFILEポインタにfclose()を使用する必要があります。これは、ファイル記述子を閉じる処理も行います。
カーネルは、それらのリソースを管理し、あなたはそれが(遅くともプロセスの終了よりも)望んでいないときにメモリを解放することが危機一髪以外にそれらを制御することはできません。 /アラン