剛學java練習斷點續傳。碰到一個小問題
上次中斷標記的位置是1,下次繼續開始下載的位置為什麼要+1為2呢?不應該從1開始嗎?
0到1下載了一個字節中斷,1到2應該還要有段數據需要繼續下載啊,應該第二次繼續下載的時候從2開始啊,而教材上卻要+1從2直接開始?
這個要看你的教材的代碼怎麼寫的。但是在真實的斷點續傳中,我們並不是線性地傳輸文件,並且精確到字節,相反,我們采用分塊的方式,如果一個塊沒有傳輸成功,無論是缺少1個字節,100個字節還是傳輸了以後發現校驗和不對(說明其中必然有錯誤),那麼整個塊都重新傳輸。
而客戶端可以同時請求多個塊。