这个结果跟老师讲的有点对不上啊

来源:4-5 字节缓冲流

小竹摇曳

2016-08-15 20:20

老师是说BufferedOutputStream效率是最高的,但结果是利用BufferedOutputStream实现的copyFileByBuffer的操作时间是排第二的,最快的是声明了一个缓冲数组,配合FileOutputStream的方法是最快的,就7毫秒,这是为什么???感觉尚利用老师的理解这就是一滴一滴的滴到桶里然后再倒出去吗?

写回答 关注

4回答

  • 画骨3478641
    2017-06-29 18:08:22

    这个和文件的大小有关联吧,

    小竹摇曳

    跟大小没关系,进源码看一下,那个是线程安全的。

    2017-08-27 22:55:46

    共 1 条回复 >

  • XhstormR
    2016-09-08 07:57:34

    还在吗?

    小竹摇曳

    ???

    2016-09-08 15:54:58

    共 1 条回复 >

  • 小竹摇曳
    2016-08-22 08:59:55

    我后来咨询了老师,发现是因为BufferedOutputStream是线程安全的,所以速度也不能说很快。

    小竹摇曳 回复慕雪2708...

    BufferedOuteputStream比FileOutputStream快,但是BufferedOuteputStream比带自定义缓冲数组的FileOutputStream慢。有点绕,但是得核对一下是这种情况吗?FileOutputStream不带缓冲应该不会比BufferedOuteputStream快吧。

    2016-09-02 14:36:58

    共 2 条回复 >

  • 转身格式化
    2016-08-16 09:40:34

    有一个临界点的,对于小文件10M以下的文件体现不出优势,对于百兆文件正确使用

    小竹摇曳

    亲,真的吗,我拷贝了一个61.5M的文件试了一下,自定义缓冲数组的是697ms,BufferedOutputStream是141940ms,感觉时间上的差距反而更大了没有缩小啊。

    2016-08-16 13:23:54

    共 1 条回复 >

文件传输基础——Java IO流

为您介绍IO流的使用,以及对象的序列化和反序列化的内容

133754 学习 · 1030 问题

查看课程

相似问题