博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java io
阅读量:6937 次
发布时间:2019-06-27

本文共 442 字,大约阅读时间需要 1 分钟。

hot3.png

文件拷贝的方式

  • 利用FileInputStream,FileOutPutStream来进行
  • 利用 java.nio 类库提供的 transferTo 或 transferFrom;效率更高,减少不必要的拷贝和上下文切换

文件拷贝流程

用户态(User Space),内核态(Kernel Space);设计到上下文切换

  • 读取步骤;从内核态读取磁盘到内核缓存,切换到用户态从内核缓存读取磁盘信息;
  • 写入步骤:从用户态写入到内核缓存,内核态读取内核缓存写入磁盘

文件拷贝优化建议

  • 利用缓存机制,合理减少io次数
  • 利用transfer技术,减少上下文切换和额外的io操作
  • 减少不必要的转换步骤,比如编解码

Buffer

除了Boolean类型,其他基本类型都有buffer;

  • capacity,缓冲区容量
  • limit,操作上限
  • position,开始位置
  • mark,上一次的位置,不是必须的

转载于:https://my.oschina.net/u/1590027/blog/3047533

你可能感兴趣的文章
通过ssh隧道连接
查看>>
shell 批量添加用户健壮版
查看>>
mysql主从状态异常解决办法
查看>>
java ASM 分析类
查看>>
java抽象类
查看>>
MapReduce: Simplified Data Processing on Large ...
查看>>
cd 命令
查看>>
Oracle数据库进程
查看>>
我的友情链接
查看>>
linux vsftp的配置
查看>>
Scapy脚本执行出现警告WARNING解决办法
查看>>
我的友情链接
查看>>
J2EE相关
查看>>
Nginx 出現 500 Error 修復 (too many open file, connection)
查看>>
一起因网线问题引起的网络故障的解决过程
查看>>
我的友情链接
查看>>
s:property 获取 ValueStack中的值
查看>>
我的友情链接
查看>>
域控制器不同步
查看>>
IDEA控制台输出乱码解决方案
查看>>