当前位置: 首页 > 面试题库 >

在close()之前使用flush()

赵鸿畴
2023-03-14
问题内容

根据Java文档,在任何java.io
Streams上调用close()都会自动调用flush()。但是我在很多示例中都看到过,即使在生产代码中,开发人员也都在close()之前显式使用了flush()。在什么情况下,我们需要在close()之前使用flush()?


问题答案:

在编写必须发送的内容后,开发人员养成了调用flush()的习惯。

恕我直言,在刚进行写操作时,使用flush()然后close()很常见,例如

// write a message
out.write(buffer, 0, size);
out.flush();

// finished
out.close();

如您所见,flush()是多余的,但是意味着您正在遵循一种模式。



 类似资料:
  • 在C/C++中,如果客户端和服务器完成了3次握手,并且这个连接位于服务器的backlog(侦听队列)中。在服务器调用之前,如果客户端调用会发生什么。是否将此连接从积压中删除?

  • 本文向大家介绍在jQuery 1.4之前启用delay()的使用,包括了在jQuery 1.4之前启用delay()的使用的使用技巧和注意事项,需要的朋友参考一下 前几天,我试图将HTML模板转换为CMS系统,但delay()在模板的JavaScript中使用jQuery函数,却发现了一个绊脚石。在模板制作过程的一部分中,我发现页面上发生以下错误。 Uncaught TypeError: Obje

  • 我已经开始为一个简单的应用程序开发后端,并且我已经建立了一个数据库类(名为),所有文件都将与之通信。在我的中,我有以下内容: 它是一个,所以我可以从其他文件中访问。 在我的其他文件中,我有以下帮助可读性:(因为它是一个类,它将通过引用传递) 在我的课程中: 当我构建代码时,它构建得很好。 运行时,应用程序立即崩溃与。错误消息是: 我已尝试在类中的init函数上放置断点。它没有到达断点。 我已尝试将

  • 描述 (Description) 此函数关闭FILEHANDLE,在适当的情况下刷新缓冲区,并将FILEHANDLE与原始文件,管道或套接字解除关联。 如果未指定,则关闭当前选定的文件句柄。 语法 (Syntax) 以下是此函数的简单语法 - close FILEHANDLE close 返回值 (Return Value) 此函数在失败时返回0,如果刷新缓冲区并且文件已成功关闭,则返回1。<!

  • close(关闭文件) 相关函数 open,fcntl,shutdown,unlink,fclose 表头文件 #include<unistd.h> 定义函数 int close(int fd); 函数说明 当使用完文件后若已不再需要则可使用close()关闭该文件,二 close()会让数据写回磁盘,并释放该文件所占用的资源。参数fd为 先前由open()或creat()所返回的文件描述词。 返