原來如此,進度條總是停在99%不動?其實這要是主要原因

嗶哥自從學會上網衝浪後,最最最討厭的一個數字就是:

99%。

這是一個充滿魔力的數字,曾讓我狂躁、焦慮,甚至激動得想砸鍵盤錘電腦扔手機。

原來如此,進度條總是停在99%不動?其實這要是主要原因

比如下載學習資料或看動作大片,苦苦等待2小時,好不容易下到99%,以為2秒後就能享受大片的美妙,步入極樂世界。

結果半小時過去了,進度條死死卡在99%,任你千兆光纖,專線寬帶,愣是一絲不動,穩如泰山。

原來如此,進度條總是停在99%不動?其實這要是主要原因

再去檢查路由器,狂按重啟鍵,發現網絡一切正常,網頁秒開,唯獨進度條上的99%永恆不變。

原本等待美好事情發生的那股興奮、激動之情,被徹底湮滅,轉而為之的是憤怒、惱火、狂躁.....

腦子裡只想幹一件事↓

原來如此,進度條總是停在99%不動?其實這要是主要原因

為什麼進度條總要卡在99%?為什麼最後1%永遠加載不動?

今天,嗶哥要為大家破解這一千古謎題,揭開背後不可告人的真相。

技術原理導致

關於進度條99%的問題,得從它的誕生說起。

圖形進度條最早出現在1979年, 由Mitchell Model在他的博士論文中提出。(進度條概念誕生於1896年,當時僅是一個概念,沒有具體的應用)

論文裡他表示:進度條能在複雜的計算機環境中監視系統行為。

說白了就是:進度條能直觀展現電腦在做什麼,做到哪種程度。

原來如此,進度條總是停在99%不動?其實這要是主要原因

正因為進度條能用最簡單的圖案和數字,表達電腦複雜的計算過程的特性,於是漸漸在各大操作系統流行起來,成為了電腦的經典標誌之一。

但問題來了,人不是電腦更不是神,再牛X的程序員也無法預測電腦什麼時候完成工作。

所以程序員開發出來的進度條,根本不能精準地反映出電腦情況,所謂的50%、80%、90%,僅是大概的數字,預測而已。

可以說你看到的進度條,和實際的進度是兩個東西。

原來如此,進度條總是停在99%不動?其實這要是主要原因

另外你在後臺打開的軟件,網頁這些程序隨時會佔用資源,瓜分走處理器的運算量,也是影響進度條的因素之一。

電腦沒辦法穩定均勻地運行,在波動隨機性巨大的情況下,進度條能準才有鬼咧。

例如你玩遊戲處在加載界面,3分鐘加載到99%,突然你打開另一個遊戲,處理器資源被瞬間佔滿。

哦嚯,恭喜你,你的遊戲將長時間卡在99%,配置差點的電腦當場宣佈卡死無響應。

原來如此,進度條總是停在99%不動?其實這要是主要原因

產品經理的惡意

雖然進度條由程序員開發,但真正設計進度條的人,是產品經理,包括功能、樣式、圖案等。

很多產品經理在設計進度條時,會特意要求程序員製作一個“虛假進度條”。

可能你會問,產品經理為什麼無緣無故搞個假東西騙人呢?

給你們舉個栗子,看完就懂了。

假設現在有2個相同下載速度的進度條,A和B,它們的下載完成時間都是100秒。

原來如此,進度條總是停在99%不動?其實這要是主要原因

A是經過產品經理特殊調教的虛假進度條,它很套路,用了10秒下載到99%,最後1%花了99秒完成。

B是老實進度條,沒被調教,10秒加載到10%,100秒100%,一分不差。

此時因為A前十秒加載到99%,而同樣時間B卻僅有10%,在強烈的對比下,大部分人會認為A比B更快,A比B更好用。

雖然A最後耗費90秒才完成1%,但很多人出於不甘心的心理,反而會耐心地等待,為它打氣。

在優勝劣汰的規則下,用戶自然紛紛把B卸載掉,只留下A,產品經理出於用戶留存的想法,只能優先採用虛假進度條A。

原來如此,進度條總是停在99%不動?其實這要是主要原因

現在明白了吧,有時候不是進度條不準,而是產品經理在搞事。

小提示:虛假進度條,常見於各類視頻網站。

下載完成後的塊校驗

相信小夥伴們用迅雷時,沒少經歷過下載到99.9%,突然0KB的情況。

根據我多年的經驗,導致這種情況發生的原因主要因為塊校驗的機制

原來如此,進度條總是停在99%不動?其實這要是主要原因

迅雷下載採用P2P協議加速,P2P的優點在於有多個數據來源。

每個下載過該文件的人,相當於一臺服務器,當別人下載時自動在後臺上傳數據,提供速度。

想想成千萬人免費當苦力,為你一人上傳資源,那是多壯觀的場面。

這便是熱門資源下載永遠滿速,冷門資源僅有幾KB的原因,也是你電腦時不時上傳滿載的真相。

原來如此,進度條總是停在99%不動?其實這要是主要原因

但缺點同樣也有,因為數據來源多,質量參差不齊外加上傳不穩定,容易導致文件亂碼出錯。

因此迅雷定下了一個規則:在下載到99.9%的時候,會對文件進行塊檢驗,如果某個塊出現問題,無法重新下載,則會一直卡在當前進度不動。

實際當進度來到99.9%的時候,文件早已下完,最後的0.1%僅是留給迅雷做文件檢查用。

如果哪天卡在99.9%不動,別傻楞去充白金會員,大聲告訴你:鈦金會員都沒用!

原來如此,進度條總是停在99%不動?其實這要是主要原因


分享到:


相關文章: