黑马程序员技术交流社区
标题:
RandomAccessFile流关闭的问题?
[打印本页]
作者:
王军行
时间:
2013-3-29 08:08
标题:
RandomAccessFile流关闭的问题?
本帖最后由 王军行 于 2013-3-29 09:27 编辑
毕老师视频上说这个RandomAccessFile可以模拟多线程下载,我搞了快半个小时弄出个多线程复制文件
一个类实现Runnable
构造传入一个源文件File和一个目的文件加上你要的线程数int c
初始化建立了两个RandomAccessFile对象
我把读写操作和读写用的byte数组创建封装到了Run方法中
然后封装了个copy方法来实现建立c个线程,每建立一个线程指针后移 Math. cile( 源文件长度除以c)
然后实验了下,发现可以完成还挺快的一个多G的文件复制也就八秒多
我想完善他的时候发现不知道这个流应该在什么时候关闭了?
只能等虚拟机退出了吗?
作者:
张世钦
时间:
2013-3-29 09:00
既然是多线程 每个线程都有自己的RandomAccessFile 每个线程copy完了就关自己的流就行了呗
作者:
我手心里的宝
时间:
2013-3-29 09:07
最好把你的代码贴一下,贴一下更直观
贴出来给你找问题
作者:
王军行
时间:
2013-3-29 09:29
本帖最后由 王军行 于 2013-3-29 09:32 编辑
张世钦 发表于 2013-3-29 09:00
既然是多线程 每个线程都有自己的RandomAccessFile 每个线程copy完了就关自己的流就行了呗 ...
嗯,明白了,顺便问一下,如果我只用一个RandomAccessFile 多个线程调用这个对象的读写方法,这样算开启了多线程读写吗?
我试了下。数据没有出错。它开启了多个读写流吗?
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2