2008-09-16 164 views
3

我使用fdopen將流與打開的文件相關聯。fdopen()是否會導致內存泄漏?

當我文件,流是否也自動解除關聯,並且所有流內存返回到操作系統,還是我需要知道fdopen'd文件並以特定方式關閉它?

- 亞當

回答

5

close()是一個系統調用。它將關閉內核中的文件描述符,但不會釋放libc中的FILE指針和資源。您應該在FILE指針上使用fclose(),這也將負責關閉文件描述符。

-1

內核管理這些資源,你必須對他們比,當它想(不遲於終止進程),這可能釋放內存的千鈞一髮其他無法控制的。

/艾倫

相關問題