我读过,打开和关闭文件编写器可能会有点繁重的操作。那么保持一个文件编写者一直打开是可以的吗?可以让档案作者始终保持开放状态吗?
0
A
回答
2
通过保持开放状态,您可能不得不担心CommonsWare在您的问题的评论中指出的完整性。我认为这样做的唯一原因是减少开放正确的时间?从安全角度来看,这并不需要太多时间,所以在完成主动写入文件并在需要时重新打开而不是在应用程序的整个生命周期中保持打开时关闭它会更好。
2
如果“所有的时间”意味着你的程序的持续时间,那么答案是是的。关闭文件编写器的目的是确保写入文件的所有数据都写入文件。写入时,优化会使I/O进程更快,因此操作系统通常会写请求并将其写入缓存或缓冲区,然后当缓冲区满时,它会将所有内容批量写入到文件作为一个I/O,而不是可能的数百个。关闭文件写入器会通过告诉操作系统将缓冲区写入文件来刷新此缓冲区,即使该文件可能未满。在大多数情况下,退出程序会自动关闭任何开放的读者/作者,但最好的做法是明确写出关闭行,因为显式总是优于隐式。
这并不是全部关闭作家,但它是这样做的主要原因。关闭作家也会结束该文件的通道,因此出于安全考虑,您应该在不使用时关闭作者。调用open/close的唯一原因是昂贵的,因为您在这样做时创建I/O。所以,如果你可以消除呼叫(即在循环之外而不是在内部呼叫打开/关闭),这将是有益的,但是不要觉得你需要一个开放和一个接近终生使用该作者的时间。
相关问题
- 1. 配置保持活动状态始终保持连接状态
- 2. 让查询框保持打开状态
- 3. 如何强制选择jquery select始终保持打开状态?
- 4. 导航活动如何始终保持打开状态?
- 5. 保持Android菜单始终处于打开状态:onOptionsMenu
- 6. FAB操作可能在点击后保持打开状态吗?
- 7. 让Android摄像头在活动中保持开放状态
- 8. 始终保持最佳状态的可点击的表单
- 9. 如何让文件保持打开状态以便读取
- 10. 如何确保JDialog始终保持最佳状态
- 11. wxPython - wxHtmlWindow,滚动条可以始终保持在veyr底部吗?
- 12. 所有最终状态都可以从DFA的起始状态中获得吗?
- 13. JQuery保持多个拖放状态以保持项目的颜色与状态
- 14. 我可以让我的服务保持Windows进入睡眠状态吗?
- 15. 无状态会话bean可以保护最终方法吗?
- 16. qTip保持打开状态
- 17. 让UIViewController始终处于活动状态
- 18. 如何让应用始终在屏幕上保持活跃状态
- 19. 可以DAO的保持状态信息
- 20. WF状态机可以有多个终端状态吗?
- 21. 表格视图行在移动时可以保持放置状态吗?
- 22. 如何暂停用户的网站,但让开发者保持激活状态?
- 23. MPNowPlayingInfoCenter始终处于播放状态
- 24. 使用Server.Transfer()时可以保持会话状态吗?
- 25. 滚动页面时,Can Kendo Datepicker可以保持打开状态吗?
- 26. 可以在SQLite中长时间保持读事务处于打开状态吗?
- 27. 保持以前的状态
- 28. 如何使ColorPicker swatch始终在Flash AS3上保持打开状态?
- 29. SqlDataSource是否始终保持数据库连接处于打开状态?
- 30. 图像窗口始终保持打开并处于挂起状态
什么是所有的时间? –
你从哪里读到这个?你真的解决了任何性能问题吗? – tnw
k.krol:我只是问,不记得我在哪里读它,也许在这里 - tnw所有的时间都是服务的所有生活 – loki