我使用fdopen将流与打开的文件相关联。
当我close()
文件时,流也自动解除关联,并且所有流内存都返回到操作系统,或者我是否需要知道fdopen'd文件并以特定方式关闭它?
- 亚当
答案 0 :(得分:5)
close()
是系统调用。它将关闭内核中的文件描述符,但不会释放libc中的FILE指针和资源。您应该在FILE指针上使用fclose(),这也将关闭文件描述符。
答案 1 :(得分:-1)
内核管理这些资源,除了close调用之外你无法控制它们,这可能会在需要时释放内存(不迟于进程终止)。
/阿伦