java - 重命名、删除或更改文件路径的成本

标签 java linux file-io

删除重命名移动 文件操作的成本是多少?哪个最快?

我想用java,文件由linux操作系统维护。

最佳答案

一般来说哪个更快是不可能的,因为相对性能取决于多种因素。这可能是无关紧要的……因为它们做不同的事情并且通常不可互换。

但是:

  • 如果源位置和目标位置位于同一文件系统中,则重命名和移动通常是等效的。

  • 如果移动涉及在文件系统之间移动,它可能是最昂贵的。必须复制 O(N) 个字节。

  • 否则,删除可能是最昂贵的。操作系统需要更新父目录并将文件使用的所有磁盘 block 标记为空闲。

  • 实际成本还取决于操作系统和所涉及的文件系统类型,以及(在某些情况下)所涉及文件的大小 - 见上文。

关于java - 重命名、删除或更改文件路径的成本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13927888/

相关文章:

java - 嵌套 HashMap 和声明

java - 欧拉计划 N# 8 JAVA

java - 使用 apache poi 从扩展名为 xlsx 的 Excel 文件读取数据时,需要很长时间

linux - xentop 的格式化输出

windows - 在 Windows 和 Linux/Ubuntu 上运行的基准测试软件

java - 需要设计方案 : Enabling menu item from outside JFrame

java - 当我们传递一个空字符串时,String 的 valueOf 方法返回 4

linux - sched_class 结构中的 .next 字段有什么用?

java - 如何从特定部分开始读取二进制文件

java - copyInputStreamToFile 方法不存在