【问题标题】:Can an fdopen() cause a memory leak?fdopen() 会导致内存泄漏吗?
【发布时间】:2010-09-09 07:59:49
【问题描述】:

我使用 fdopen 将流与打开的文件相关联。

当我close()文件时,流是否也会自动解除关联,并且所有流内存都返回给操作系统,还是我需要知道 fdopen'd 文件并以特定方式关闭它?

-亚当

【问题讨论】:

    标签: file-io memory-leaks stream


    【解决方案1】:

    close() 是一个系统调用。它将关闭内核中的文件描述符,但不会释放 libc 中的 FILE 指针和资源。您应该在 FILE 指针上使用 fclose(),这也将负责关闭文件描述符。

    【讨论】:

      猜你喜欢
      • 2021-03-23
      • 2021-09-25
      • 2014-12-08
      • 1970-01-01
      • 1970-01-01
      • 2011-06-16
      • 2011-10-28
      • 1970-01-01
      相关资源
      最近更新 更多