為什麼進度條載入到99%總會卡住?

突然好多人回答,受寵若驚呀。

不過,真相好殘忍(╥﹏╥)


很有意思的問題,是不是很多時候,在考慮界面精簡的同時,開發者也需提供一點毫無意義的東西給予用戶安慰的效果?

這裡是給使用者提供「安慰劑按鈕」的一段

自美國頒布了《美國殘疾人法案》(Americans with Disability Act)之後,應法案的要求,很多電梯里都安裝了一個「關閉」按鈕,但這通常是給檢修員和應急救援人員使用的,而且只有在插上了一把鑰匙時才管用。

在美國,對於普通人來說,這個「關閉」按鈕是沒有作用的,你按或是不按,電梯門總是會關,但如果按下了按鈕,過一會兒電梯門關上了,你的大腦中就會充滿成就感,你按下按鈕的行為就被強化了,於是以後進入電梯時,你便會習慣性地按下「關閉」按鈕。

像這樣沒有實際功能的按鈕叫做安慰劑按鈕(Placebo Buttons),醫生給病人吃的就像不含任何藥物成分的安慰劑膠囊一樣,雖然沒有實際上的功效,但有時卻能對人的心理產生奇特的影響。

如果細緻觀察你的生活,想必你也有以下常見的習慣:

  • 狂按電梯等按鈕,試圖加快關閉速度。——實際上速度並沒有加快
  • 熱得不行回家馬上把空調調到16°C。——但事實上氣溫不可能馬上下降到16°C
  • 電腦卡的時候狂點擊滑鼠右鍵內的「刷新」命令。——事實上,「刷新」並不能解決卡的問題。
  • BT下載的時候讓任務暫停後馬上繼續,希望速度能加快。——好吧,從我個人角度來說,我發覺這好像有點效果。 ……

從精簡的角度而言,很多的設計是過度的

相關的實例與研究表明,其實人對時間無法有準確的主觀感知,人們對時間其實缺少準確的感知能力。一般來說,人們對較長的時間間隔往往估計不到,但是對較短的時間間隔卻估計較高。

  • 從用戶的需求來說,這些設計能夠讓用戶發泄焦灼等待的情緒

心理學家發現,人的時間知覺與活動內容、情緒、動機、態度等等有關。內容豐富而有趣的情境,使人覺得時間過得很快,而內容貧乏枯燥的事物,使人覺得時間過得很慢。積極的情緒會使人覺得時間短,消極的情緒使人覺得時間長。期待的態度會使人覺得時間過得慢。一般來說,對持續時間越注意,就越覺得時間長。對於預期性的估計要比追溯性的估計時間顯得長些。

如何去安慰用戶

在網路,使用者對於一秒的等待速度都會比平時的時間要放大一點。所以,當設計並不能做到不卡,不佔用用戶時間的時候,通常會給用戶在等待回應的時間裡有一些緩解急躁情緒的東西。

1、降低挫敗感,尤其是多次嘗試的挫敗感

設計時,讓機器的出錯反饋風趣而又具有人性化,表現出對用戶的關懷,自然就容易被用戶接受。

採用的方法一般為:擬人化(如豆瓣開小差了),幽默(如煎蛋超載雞,版本二),小遊戲等。

但需注意的是,對於用戶的多次嘗試失敗,應該給予更加具有關懷性的反饋,對於用戶而言,這種反饋是能夠讓其「內牛滿面」的。如QQ郵箱的中,多次點擊收信按鈕的溫馨提示。

2、讓等待變得緩慢化且可以打發

  • 進度條與loading

基於等待需時的長短,提供的進度反饋也不一樣。短時間的採用簡單的loading圖標,滑鼠的忙碌狀態;中長時間採用的是沒錯:進度條,但同時,應盡量避免採用非確定性進度條。可參考windows交互體驗規範

實際上,進度條的百分比及進度根本不準確,但誰在乎?這有效的緩解了用戶等待的不安。甚至有時候會卡在99,畢竟前面你已經感到速度飛快,這已經滿足了你的心理需求,這就足夠了。

  • 失靈的信號燈按鈕?不耽誤大家按它

在美國,過去行人要過馬路,得先按下路邊的信號燈變換按鈕,而現在馬路上的紅綠燈和倒計時指示牌大部分都是電腦控制的,多數信號燈變換按鈕已經成了擺設。

但把它們拆掉既麻煩,成本又高,很多城市乾脆把它們留下來,反正也不影響市容,誰想按就按個痛快。

3.讓用戶覺得自己很重要

  • 收信按鈕

現在郵箱的界面內為什麼需要「收信」按鈕?這是一個曾經在部門內部激烈討論的問題,因為郵箱早已經實現了同步收取,郵件一發,對方無需點擊收信按鈕,即可收到郵件並看到提示。

從精簡的角度上說,「收信」按鈕是軟體端的產物,因為本地郵件與網路端郵件無法實時同步,才需要一個「收信」按鈕。那麼對於網頁端來說,這個按鈕就顯得多餘了,因為網頁能夠做到實時的同步了。

  • 中央空調開關

很多辦公室的牆上都有一個控制室內溫度的按鈕,其中大部分也是沒用的。公司老闆和空調工程師很多年前就開始在辦公室內裝上這個沒用的旋鈕,目的是為了防止辛勞的上班族們把空調開得太大而增加電費賬單。(萬惡的黑心資本家!)

《華爾街日報》在2003年刊出了一則報道,據一名中央空調專家統計,90%安裝在辦公室里的溫度調節按鈕是擺設,有的公司甚至在安裝了發聲裝置,調節溫度時,通風管道中會發出呼呼的聲音,讓不明真相的員工們以為那按鈕真的有作用!

3、給予驚喜

喜新厭舊是人固有的習慣,即使是再美艷的界面,再風趣的句子,也有厭倦的時候,對於網路尤甚,今天流行的句子,明天就凹凸了。這種行為表現得最突出的,就在網路產品的皮膚上。用戶似乎總是沒有100%滿意的皮膚。

所以,在設計上,應該有一些隨機的,易於被用戶發現的變化。通過這種變化,用戶可以獲得愉悅感,同時也可獲得發現這種變化的成就感,這就是兩種積極的情感因素。

比較鮮明的例子就是Google Doodle,還有就是各種軟體中的小彩蛋,以及遊戲中的隱藏關卡和作弊碼等。

那麼,你會用戶提供安慰劑按鈕嗎?

按下沒有實際用途的交通信號燈變換按鈕,可以讓我們獲得心理安慰,就像去廟裡拜佛燒香的迷信。我們迷信是因為心懷期望,若最後期望得以實現,便會繼續這樣的迷信行為。

我們的大腦不喜歡雜亂無章的事物,喜歡給不同的事情建立聯繫。即使很多事情之間未必有什麼關聯。

工作太多,任務太難,壓力太大,在牆上安裝一個「辛勤耕耘」按鈕,是不是可以大豐收了呢?

演譯自維基百科Placebo button(翻譯者新獨立觀察)及騰訊ISUX (安慰你的用戶-騰訊ISUX),網站已明確允許轉載。


昨天出去了,今天回來一看嚇一跳,第一次過百的贊,太高興了。哈哈哈。。。。多謝大家的支持哈。

說一下,並不是所有進度條都是假的!!!只能說大部分進度條或多或少都會有點假的成分,為了美觀什麼的犧牲了部分真實。不過如果要真的按實際情況來的話,你們會看到進度條一卡一卡的,這樣有些強迫症的用戶會感覺這個進度條看起來很揪心,如果經常載入,比如遊戲的場景載入,一兩次你能忍受,遊戲中幾十次甚至幾百次的這樣載入,用戶就會因為這進度條而放棄遊戲。現在很多手游已經把進度條換成了進度值,只放一個小數字放到角上,之後在載入界面加入算是有點可玩性的小遊戲,比如:點桃心,切西瓜這類,讓用戶不用去關注進度,分散注意力。

本人是遊戲程序員,所以對其他軟體的進度條不是十分清楚,如果有說錯的話,請見諒,給我留言我進行修改哈,盡量不誤導別人。

------------------------------------我是分割線(下面是之前的)-------------------------------------------

假進度條……

好吧,認真回答一下。從先說下程序員是怎麼做進度條的。

產品或策劃給個需求,要求這個地方加個進度條,OK,善良的程序員按照實際情況做了一個進度條。可是策劃一看,對程序員說,你這進度條不行呀,你看有時候快有時候慢,還一卡一卡的,根本就不符合美的需求嘛。程序員說,可是實際情況就是這樣的呀,這進度和網速呀,電腦的載入速度呀,軟體卡不卡呀這都有關呀,這沒法控制呀。策劃說,不行,必須得均勻速度,不能給人一種卡的感覺。沒辦法了呀,只能想辦法了,聰明的程序員想到了一個辦法,就是假進度條呀,載入一部分後再走動畫,這樣就能保證在一段裡面是均勻的,對一般策劃這樣已經足夠了,但是還是有不滿足的,說,既然一段均勻,那我想所有的進度條都均勻。苦逼的程序員沒辦法了,那隻能做個全假的進度條了,可是全假的不行呀,有可能進度條走完了,我東西沒載入完呢呀,神奇的程序員又想了一個辦法那就在99的時候等待吧,就這樣做了一個進度條給策劃,策劃看了會說,為啥有時候會停到99呀。程序員說,你說讓做個均勻運動的呀,如果動畫走完程序還沒載入完只能停到99呀,最後肯定得載入完才能變為100呀,而且用戶一看已經到99了,肯定不忍心關閉的,也不會流失用戶的。策劃聽了,想了想說,好吧,那就這樣吧,都讓一步吧。最後讓步的策劃和快樂的程序員手拉手一起步入了下一個需求中……

手機碼字,格式什麼的請見諒


為什麼看著上面的答案我會想到升國旗的時候。。

每次都要看看是不是剛好音樂結束的時候升到最頂上

如果快到頂上了結果音樂還沒結束

國旗手就會等一等,等到最後「前進進!」的時候再啪的一下拉上去。。

哈哈哈哈哈哈哈哈


跟手動升國旗一個道理


一種可能性:進度條的進度顯示參數和決定速度的量並不嚴格正比。比如複製文件的時候,一般進度條按文件數量顯示,如果大量小文件集中在尾部處理,就會出現這個情況。


因為進度條有很多種,任務進度的可預測性也有很多種。

有些進度條是按階段數量平均或者不平均分割的,而各階段的耗時及比例並不總是相同,也就不能準確預測和顯示剩餘時間。還有些是因為各單元的耗時不相同,比如大文件與小文件的差異。

99%卡住可能是在拼接文件(多線程下載),等待最後一個文件塊(P2P),進行安全檢查等等。

分別可能:因磁碟讀寫而緩慢;某文件塊緩慢或超時,或者P2P的稀有文件塊缺乏資源而無限99%;安全檢查的API或程序非常緩慢,超時值設計過長。等原因。

有些進度條就是準確的,因為它是最普通的可預測進度,或者最後一步的耗時很短而感覺不到。

還有些進度條就純粹是騙人了,為產品設計讓路,前半按預定時間,最後卡在99%,使其在心理學上讓用戶的體感更好(初期載入超快,不需準備),耐心更長一點(就剩1%了)。

個人認為,規範的產品中,會採用普通的進度條表示可預測的進度,循環滾動的進度條表示不可預測的進度(如Windows XP的開機滾動,文件複製時的計算文件數),靜態條塊表示長時間、不重要的緩慢進度(如下載軟體中的進度)。


其實在1到98之間也一直會卡住,只是沒有99那麼令人捶胸頓足,於是你記住了99


如果一個子任務是慢的,那麼它很有可能一直都是慢的。而它是慢的這件事,要麼無法預知,要麼不好計算。這就導致了進度條總是在接近100%的地方慢下來。

無法預知型:

我自己寫過一個簡單的多線程下載器。從道理上來講,每個線程應該會分享當前可用的帶寬,並且當有線程下載完成的時候,剩餘線程的速度會有明顯回升。

但是實際情況卻是,有個別線程會由於飢餓而卡住或者速度緩慢,哪怕是其他線程已經下載完成,它的速度也不見改觀。這樣,隨著其他線程在快下載完時都一個個地完成任務退出,這個拖後腿的線程影響就越來越明顯。甚至有時候它會餓死,除非你暫停下載然後再重新下載(實際上這個過程重建了連接)。

不好計算型:

再舉一個例子,下載好的文件往往需要病毒檢查,向其他媒介複製數據也往往需要一個同步的過程。這個過程是你清清楚楚地知道它會很慢,但是它所需要的時間可能遠遠比你之前的操作要費時,而且受環境影響大。在對這種事情進行進度估值的時候,最簡單的辦法就是認為它需要的時間極短。這樣的話進度條就會卡在99%而不是10%了。


這個東西就和deadline一樣,不到最後一刻想不起自己很多事都沒做。


進度條是為了緩解等待過程中的焦慮用的,並不能完全符合當前進度


當年在某廠的時候,我們的資深交互設計師分享過一個案例,講的是瀏覽器的載入速度優化,在大家同等載入時長的情況下用戶總覺得uc更快,程序員們也百思不得其解。

後面設計師們才發現,uc總是先快後慢,而不是真是的載入進度,於是我們也換成這個交互,做了個假進度,然後發現反饋慢的用戶就這樣減少了。

但是假進度也有問題,那就是不那麼准,畢竟你之前走快了,所以就有了這種卡在99的情況。


如果是下載的進度條的話,原因是多線程下載。舉例 一個1G的數據下載 分配了20個搬運工同時搬運 每個人大約搬運差不多的數據 平均每個人速度是N 總速度就是20N 隨著數據漸漸下載 有的搬運工速度快 手上活完事了 就回去睡覺了 然後 到99%的時候 就剩那個最慢的而且就他一個在那搬磚了。他的速度是明顯遠低於N的 且就他一人 所以99%就慢了 甚至會出現這個搬運工一開始就沒有幹活 最後人家都走了 把他曬出來了 出現了99%卡住。


這是一種信仰,一種期待。


反正沒載入完你都得等,讓你在終點等或者在起點等,這對用戶感受來說很有不同。


因為:進度條根本就是騙人的!主要功能是安慰劑,緩解用戶的焦急情緒。

最良心的進度條:在任務數量已知的情況下(如100個任務),給出當前指定到位置的百分比。但一樣存在每個任務時間不平均的問題。

最安慰劑型進度條:估計一個大概時間,這件事大概1分鐘幹完,那麼每秒加1.16%,最後99%或者100%的時候還沒幹完?那就一直顯示99或者100,直到完成。也有情況是做到一半比如60%的時候實際已經完了,那麼突然變成100%然後告訴你,完成了。

在安裝程序製作工具里,甚至有選項讓進度條故意走的慢一點,避免你的小軟體裝的太快,進度條都來不及顯示……

由於對任務總量的難以估計,或者對於任務量難以分成小塊量化,所以大多數進度條都是以上兩類的。當然也出現了一種沒有%的進度條,就是一個在動的gif圖片而已,安慰用戶,沒死機,等著吧!


因為這種進度條本來就是假的,他根本不知道你載入的進度,只會知道你是否載入完畢.

進度條按時間自動增長,如果在沒達到99%的時候你載入完了,那麼直接跳到100%,如果到99%都沒載入完,那隻好卡在那裡等咯.

——以上是我腦補的,並沒有經過求證.

...不過我猜要是讓我寫一個有進度的進度條,然後還無法獲取載入進度,那我就會寫成這個樣子.


用迅雷下片的時候經常卡到99,就把後綴名改下就可以播放了


還是專業人士來一發吧:

其實計算機的任務,大多都是【進度條不平均型】,能平均的反而很少。


很多原因,上面那些說假進度條的答主有點片面了。

首先要了解,大部分的進度條並不是按時間來前進的,這是因為大部分任務的完成沒有固定的、可預知的時間。下面列舉一些例子來說明為什麼進度條會卡在 99%。

下載、在線播放類的進度條:

  • 下載、播放的是 BT 或者類似的 P2P 資源:這類資源,剛開始的時候互聯網上資源多,只要和別人連接上了,就可以盡情下載,而到了最後,剩下的一般都是難找的部分,所以會變得很慢,就會卡到 99% 。常見的例子有 用迅雷下種子用快播等 P2P 播放器看片
  • RTMP 等資源:有些類型的下載和播放,本身就有最後會卡的特點,某些伺服器 RTMP 流的下載,這是伺服器決定的,比如優酷的 RTMP 流。
  • 下載到最後需要合併各下載分段、處理臨時文件:有些下載軟體,顯示 99.9% 的時候,其實所有分段都已經下載完畢了,只是正在處理文件。這個時候比較明顯的特徵是低配置電腦會變得有點卡。

安裝、更新類的進度條:安裝、更新軟體,特別是遊戲的時候,可以很明顯感覺到進度條不是勻速的,這是因為這類安裝程序一般都是按照步驟數量、文件數量來安排進度條的,如果有一個過程特別久、或者有一個文件特別大,進度條就會卡在那個位置。

  • 很常見的例子是那種在線安裝包遊戲更新,這樣的過程一般包含兩個部分,下載和安裝。考驗的分別是網速和硬體配置,而這兩個都是很不確定的,所以特別容易出現進度條卡住的情況。例如程序規定,下載占進度的 90%,安裝占剩下的 10% ,此時如果你網速很快,機器卻是一台上古配置的老爺機,那麼下載很快完成了,安裝就卡在 90%+ 慢慢前進了。
  • 很多瀏覽器在顯示網頁載入的進度條的時候,也會把 DNS解析、下載的過程當成進度條的大半部分甚至 99% ,然而實際上網頁下載完成之後的載入資源過程才是最耗時的。


感覺被騙了┻━┻︵╰(‵□′)╯︵┻━┻

有次我下一個東西用尺子量了好久進度條,難以忘記那種時刻關注的焦灼的心情。。。

原來都是騙人的(?_?)

心塞。。。


整體進度又沒法準確計算,所以就按分步來控制進度條進度,有時候最後一步恰巧正好需要的時間比較長,那就放在99多等一會兒。

當然考慮到最後一步工作較多,也可以放到50,這樣看起來進度條更真實一點,但如果你看到半天才走到50而且又不動了,一怒之下取消了怎麼辦?放到99估計你就捨不得取消了吧?!

我不知道別人是不是這樣,反正我就是這樣乾的。


與 @Karminski 同學所想一致,有時候因為某些原因無法獲得具體進度,所以就估計個大概時間顯示給你看嘍。

有同學提問說,雙進度條模式:1個顯示總進度,另外一個顯示當前處理文件的進度這種,至少看上去進度是和正在處理的文件關聯的。

這樣其實也不一定能行。

我之前做的一個項目,有個模塊是個寫卡程序,結果人家的介面是這樣的。

RESULT write(char* FILENAME);

調用之後直接阻塞,待若干分鐘寫卡完畢函數返回,你說這玩意怎麼獲取進度。。。這個寫卡時間好像還跟什麼CPU主頻有關係。

而且寫這玩意的大佬已經離職了,這段跟硬體有關係的我不敢改。

所以就直接估計一個大概的時間,然後讓進度條慢慢爬就好了,要是還沒爬完就寫完卡了那就讓進度條迅速衝到100,要是爬快了就在90%左右稍微等會。

另外進度條不一定等速前進嘛,你可以RND一下進度。

當然如果固化一組數組然後每次按著這個加上RND來前進就更完美了,看上去每次都在差不多地方消耗同樣的時間。(天了嚕我這幾年都學了些什麼玩意兒)


進度條告訴我們一秒鐘可以這麼長


哈哈,這事我干過 ?(????)

之前寫的一個小程序,性能不錯,但是被嫌太土,於是就加了個假進度條,開始是勻速的,有點死板,於是加了個偵聽,滑鼠放在進度條的時候進度條會跑得稍微快一些,點擊進度條的話會更快一下,而且點擊頻率越高越快。。。最後因為程序體積太小,為了顯得再高端一些,還在硬碟里找了幾首mp3,把擴展名改為dll一起打包進去。。。

好吧,確實有點賤 (つд?)


題主問的是哪種進度條?是下載進度條還是載入進度條?我就理解為是下載進度條吧。

之前遇到下載進到到99%的時候我都是暫停一會再開始下載,99%的問題通常能夠解決。

迅雷今年出了一個漫畫來說明下載進度為什麼老是卡在99%不動的問題。


因為前面99%都估錯了. 只好最後1%的時候多停留一會兒. 總好過以下兩種:

1. 倒回去, 回到80%. (我真見過進度條還能往回退的, 貌似是在xp裡面安裝驅動的時候?

2. 101 % ~~ 300% (小時候裝盜版遊戲常見這個, 你以為是暴擊啊還300%...


的確有的進度條是假的,但更多的情況並不是這樣。

舉個例子,迅雷下載的時候最後一下也會卡,這個時候下載速度也會有明顯下降,你說這是假的進度條,還是一個如此智能的假進度條,挖八信。

真正的原因是這樣的。

假設你是一個下載器,在聯網下載數據時,整個文件被分成了很多段,有些片段可以很容易的下載,這當然是極好的,但有些片段出錯了,丟掉了,怎麼辦?

你可以和伺服器說:再給我發一次唄。

但萬一這個片段根本不能用呢?你發送一輩子請求都不可能得到數據。

於是在用戶看來,下載進度卡住了,他就會不耐煩,不高興,他就會暫停下載,他就會去罵街,他就會把你卸載。

所以聰明的你會用另一種方法,那就是請求下一個片段,把出錯的放在一邊,等最後處理。

於是容易下載的都成功了,只剩下最難啃的硬骨頭。他們有的數據有問題,有的點背總是丟失,這些問題都堆在最後1%,能不卡嗎。

至於本地載入的,也是一樣的道理,只要用了這種邏輯,最後一下都會卡。


因為大部分的順利下載經歷都會被你忘記,而所有的卡在99都會被記住,因為你的期望完全變成了失望。

所以你以為你被卡在99了很多次,甚至會忘記卡在20、40、88的經歷。

進度條君也很寂寞,它只是想讓你記住它而已啦~原諒辛苦的進度條啦~好波?


評論的小夥子們,只想對你們說:強擼灰飛煙滅,要保重身體。


因為在99%時候卡住你才會覺得 天啊我怎麼這麼衰 你才會關注這件事覺得它「總是」卡在99% 它卡在別的地方的時候說不定更多呢?它說不定並沒有卡住,只不過這最後1%由於你的期待而顯得格外漫長呢?

就如同說曹操曹操到,實際上說曹操曹操不到才是常態,只不過曹操到的狀態比較引人注目。


因為哥們不僅要喝咖啡還有煙沒抽完.


我經歷過的3個遊戲,載入進度條都存在卡100的問題。

有的原因是進度是載入了某個文件後手動設置進度位置,然後文件多了,程序猿懶得動手調整載入先後順序,就一股腦把新加的文件放到最後,也就是100%或99%了。。。

有的原因是文件載入分兩部,讀取和解碼。然後讀取放到進度里計算了,解碼懶得再改動了,就卡100%了。。。

甚至計算公式錯誤都是原因,比如從壓縮文件中讀取資源,當前進度按照讀取後也就是解壓縮後內存大小計算,總進度卻是壓縮文件總大小。所以進度總是虛高的,於是100%後還要繼續載入。。。

所以說,大部分原因都是設計時候懶得去完善。。。。


評論的小夥子們,只想對你們說:強擼灰飛煙滅,要保重身體。


想起了一句話:行百里者半九十


一般在進行bt下載時會發生這種情況,那是因為進度條越往後資源就越少,因為很多人在下載完成之後關掉了bt軟體所以越往後資源越少而到達99時是最少的,所以……


欲罷不能


經常遇到過到99%再也不動,然後怒的捨不得砸電腦。


你說的這種情況比如迅雷的99%定律,其實是因為他們採用的是分段下載,比如說一共有100個單位的文件需要下載,前25個單位是從a站點下的,然後還有74各單位從b站點下,還有1個從c站點下載(迅雷的這個技術相當於把一個文件變成好多個文件一起下載,最大限度提高下載速率)。這就好像我想在家裡攥一部電腦我顯示器主板內存從京東買,電源線從淘寶買。但是如果我從淘寶買的電源線沒送到,但是我京東買的其他所有東西都送到了,我也一樣沒法組裝我的電腦。再回到之前,所以如果我c站點下載速度超級慢,其他的都下完了,那樣就已經99%了可是由於c站點的1個單位沒下完,也是沒法用噠!

如果你不行碰到了這種情況那麼!

恭喜!

From @Frankie Liu


還很有可能是殺毒軟體在作祟


因為很多時候,安裝,下載的時候到百分之99,是在校驗文件,相對其他下載,用的時間更長一點


為什麼我突然想到一句話叫:行百里者半九十


什麼「玩命載入中...」,"大人再等等..."....這就是傳說中的善意的欺騙...


你要知道,圖形界面用著很爽,但是製作起來,很麻煩。。。所以。。。。

有一部分進度條是假的,表現就是前期步進穩定,勻速。到後期,特別是快結束的時候就開始卡住。好多操作很難計算進度,所以只能做假的

有大部分還是真的。文件複製,安裝等。


我的工資條絕對也卡住了!


如果你說的是迅雷的話,大部分是因為你被做種了…


沒注意那些在99之前卡住的


突然想起前段時間做某款 ios app開發, 頁面轉場, 本來就已經預載入 ,可以瞬間切換到新窗, 此刻菊花就會一閃消失, 老感覺彆扭, 於是給菊花加了個 2.5秒後 消失。

我想進度條也是同理吧?

不過做升級頁面的時候 載入的進度條可是真實的喲。


像我以前編的程序,知道目標溫度,不知道起始溫度,自己偷懶,就不去獲取起始溫度,而是以25攝氏度為起始溫度,這樣子來算百分比,不達到目標溫度,最多也就只能99%,達到了目標溫度才100%


因為最後的百分之一要完成的工作比前邊百分之一的工作量要大


開發過前端的路過,這所謂的99%其實是偽進度,只是為了滿足用戶心理而做的,卡住是因為實際的進程仍未完成


解壓某些大型PC遊戲的時候20幾個壓縮包最後百分99的時候。。。


這無疑是對你喜愛程度的考驗


不卡住難道你想讓我倒回去么?


一看這個標題,就知道題主經常迅雷下載島國動作片兒。。。


就好比下載個電影99%,卡住;整理散落的撲克,少一張;整理掉落的旗子,少一枚……沒什麼,這就是這個世界的遊戲規則之一


個人感覺進度條的重點是,等。什麼心態等,很重要。這叫體驗度。哈哈


以迅雷極速版為例,因為我用的就是這個,也比較好說明

這個一般下到百分之99的時候一般都會卡一下,有時候時間長,有時候時間短,讓人無語的是

如果你這個時候打開下載目錄去看下載的文件的時候,你會發現文件已經下載好了,如果是視頻文件已經能看了,但是迅雷的界面依舊卡在百分之99,速度5k/s這個樣子【一般到99的時候頁面顯示的下載速度非常慢】

有哪位大神能解釋下這是為什麼


在99%停下的進度條是外星人意圖逼死強迫症的眾多可怕陰謀之一。

因為強迫症會使人類歸於秩序,但是秩序而統一的人類並不利於外星人入侵地球的計劃。

所以他們行動了,只要消滅了強迫症,人類會逐漸陷入混亂之中。

他們用強大的腦波控制了某些人類,製造出了

以及99%的進度條等等對強迫症患者有強大殺傷力的東西。

偉大的強迫症先驅們成片倒下,地球危在旦夕,世界的未來將何去何從?且看下回分解。

—————————————————————————————————————————————————————————————————————————————————————

然而並沒有下回。

※所有圖片均來自於網路,若侵,請別打死我。


因為你在80%~81%的時候不會注意,不會覺得很慢,

99%~100%

最後一根稻草難免心急…


進度0%

代碼1(執行花了20秒)

進度25%

代碼2(執行花了10秒)

進度70%

代碼3(執行花了10秒)

進度99%

代碼4(執行花了90秒)

進度100%

大概就是這意思吧。

——————————————————

大部分情況下,我們是計算不出來那段代碼執行多少秒的。

因為你用什麼系統,配置有多好,網速多快,丟了多少包,天氣怎麼樣,太陽風暴有沒有活動,老闆心情怎麼樣,今天吃了什麼飯,都和執行速度有關


可能進度條只是為了提高用戶體驗,畢竟用戶看著它在升就會等的概率還是蠻高的,實際上可能是假的。


推薦閱讀:

編程的樂趣是什麼?
根據這張電腦桌面的信息能否看出使用者大體品味?
中國神威太湖之光位列HPC TOP500榜首,能說明中國計算機領先國際水平嗎?
為什麼說天河二號是我國自主研發的?
中國的超級計算機這幾年做了哪些事?

TAG:心理學 | 軟體 | 編程 | 計算機 | 網頁 |