mega多线程下载

20150204

现在只是看了个大概,对整个过程有了大致的理解,记录如下:

mega多线程下载是mega存储的一部分,其中会有一些底层方法的支持,这些先不管,只是看明白是如何下载的。

可以加断点的文件:sources--no domain--其中的一个blob(js,最大的)

调用下载的语句:M.addDownload($.selected);

dl_queue.push()---DownloadQueue.prototype.push

dlIO = new dlMethod(dl_id, dl)---window.FileSystemAPI:dl.io就是这个函数

dl_writer(dl)---dl.writer---new MegaQueue()实例

throttleByIO(dl.writer)---给两个事件添加各自的回调

dlQueue.push(new ClassFile(dl))---MegaQueue.prototype.push:两个push操作来自不同的队列.

 

DownloadQueue.prototype.splitFile

api_proc(q):xhr load

没有用到memoryIO

MegaData

你可能感兴趣的:(多线程下载)