java多线程下载器分割资源如何还原

来源:百度知道 编辑:UC知道 时间:2024/09/21 18:22:58
用多线程将资源下载好后,一般是如何还原资源的啊。。

我以前做的方法是:

每个线程下载文件的一部分,并将自己那部分存储为FILE_文件块编号的方式。

每个线程结束时都去检查是否自己是最后一个下载线程,如果不是,则直接死掉,如果是最后一个线程,则去启动文件合并的线程,然后死掉。

文件合并的线程循环遍历这些文件块,用JAVA的RandomAccessFile类,将文件块按照文件块编号的顺序依次读取并写入到RamdomAccessFile类创建的文件里.RandomAccessFile具有文件追加的方法,你可以查一下API.

具体的代码我就不写了。如果你能做到多线程这一步了,应该是个JAVA用的很熟练的了吧,呵呵。

就我目前知道的,大部分人都用这种方法处理,流程比较清晰,也比较简单。

祝成功。有不明白的可以继续补充。