国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

無(wú)奈之延時(shí)函數(shù)的誤差

cnsworder / 3245人閱讀

摘要:延時(shí)函數(shù)的不準(zhǔn)確性瀏覽器時(shí)鐘精度瀏覽器的時(shí)鐘精度就是瀏覽器更新時(shí)鐘的頻率。延時(shí)函數(shù)的不準(zhǔn)確性在人類的眼中或許感覺(jué)不到和存在誤差,畢竟級(jí)的時(shí)間太短暫了。我們先設(shè)置了這樣一個(gè)延時(shí)處理的函數(shù),函數(shù)被添加到隊(duì)列當(dāng)中,預(yù)計(jì)之后執(zhí)行。

延時(shí)函數(shù)的不準(zhǔn)確性 瀏覽器時(shí)鐘精度

瀏覽器的時(shí)鐘精度就是瀏覽器更新時(shí)鐘的頻率。更新的越頻繁,那么時(shí)間也就越準(zhǔn)確。

現(xiàn)在瀏覽器的最小精度為4ms,但并不意味著頻率時(shí)刻保持在4ms。仔細(xì)分析一下,“更新操作”對(duì)電腦來(lái)說(shuō)是比較燒腦的,腦子稍微差點(diǎn)的cpu反應(yīng)慢,精度就低。事實(shí)上,除了cpu硬件之外,操作系統(tǒng)(OSX和windows下不同)以及瀏覽器內(nèi)核都會(huì)影響到瀏覽器的精度;其次,電腦本身的調(diào)節(jié)機(jī)制,尤其是筆記本。筆記本在使用電池供電的時(shí)候,精度就會(huì)被自動(dòng)降低從而達(dá)到保護(hù)電源的作用。所以最小精度4ms只是當(dāng)今瀏覽器的最高水平,顯示情況下是不會(huì)達(dá)到這一精度。

延時(shí)函數(shù)的不準(zhǔn)確性

在人類的眼中或許感覺(jué)不到setTimeout()和setInterval()存在誤差,畢竟ms級(jí)的時(shí)間太短暫了。但事實(shí)上確實(shí)存在著誤差。下面來(lái)講誤差從何而來(lái)。

setTimeout(fn,15ms);

我們先設(shè)置了這樣一個(gè)延時(shí)處理的函數(shù),fn函數(shù)被添加到隊(duì)列當(dāng)中,預(yù)計(jì)15ms之后執(zhí)行。
過(guò)去的瀏覽器時(shí)間精度在10ms~15.6ms之間已經(jīng)是極限了,那么我們就假設(shè)我們使用的瀏覽器的時(shí)間精度為10ms。

函數(shù)等待時(shí)間    |--------------| 15ms
瀏覽器刷新      |--------||----------| 20ms
  

當(dāng)?shù)谝粋€(gè)10ms之后,瀏覽器刷新了時(shí)間,發(fā)現(xiàn)“我靠,跑了這么久,還沒(méi)有到點(diǎn)”,于是又發(fā)動(dòng)第二次刷新。第二次刷新結(jié)束之后,20ms已經(jīng)過(guò)去了,函數(shù)才到了執(zhí)行期,并且比預(yù)期要多等了5ms。

我們知道,瀏覽器執(zhí)行js和更新界面是共用一個(gè)線程的,當(dāng)線程空閑時(shí),它會(huì)從任務(wù)隊(duì)列中取任務(wù)來(lái)運(yùn)行。所以當(dāng)函數(shù)到了執(zhí)行期時(shí),它會(huì)被添加到隊(duì)列當(dāng)中,但是不一定立即執(zhí)行,如果隊(duì)列中還有其他任務(wù),單線程的規(guī)則就會(huì)導(dǎo)致這個(gè)函數(shù)需要等待前面的任務(wù)執(zhí)行完才可以執(zhí)行。

基于這兩點(diǎn)原因,setTimeout()和setInteval()在微世界中,其實(shí)并不守時(shí),這是無(wú)法控制且無(wú)奈的事情。

從上面可以看出,瀏覽器的精度越小,那么誤差也就越小。嗯 ~ ~ 排隊(duì)時(shí)間無(wú)法預(yù)算,只能求老天保佑了。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/86479.html

相關(guān)文章

  • Nature重磅:Hinton、LeCun、Bengio三巨頭權(quán)威科普深度學(xué)習(xí)

    摘要:機(jī)器學(xué)習(xí)系統(tǒng)被用來(lái)識(shí)別圖像中的物體將語(yǔ)音轉(zhuǎn)為文本,根據(jù)用戶興趣自動(dòng)匹配新聞消息或產(chǎn)品,挑選相關(guān)搜索結(jié)果。而深度學(xué)習(xí)的出現(xiàn),讓這些問(wèn)題的解決邁出了至關(guān)重要的步伐。這就是深度學(xué)習(xí)的重要優(yōu)勢(shì)。 借助深度學(xué)習(xí),多處理層組成的計(jì)算模型可通過(guò)多層抽象來(lái)學(xué)習(xí)數(shù)據(jù)表征( representations)。這些方法顯著推動(dòng)了語(yǔ)音識(shí)別、視覺(jué)識(shí)別、目標(biāo)檢測(cè)以及許多其他領(lǐng)域(比如,藥物發(fā)現(xiàn)以及基因組學(xué))的技術(shù)發(fā)展。...

    GT 評(píng)論0 收藏0
  • 【Step-By-Step】一周面試題深入解析 / 周刊 03

    摘要:禁止內(nèi)聯(lián)腳本執(zhí)行規(guī)則較嚴(yán)格,目前發(fā)現(xiàn)使用。合理使用上報(bào)可以及時(shí)發(fā)現(xiàn),利于盡快修復(fù)問(wèn)題。因?yàn)槭录?huì)從目標(biāo)元素一層層冒泡至對(duì)象。允許給一個(gè)事件注冊(cè)多個(gè)監(jiān)聽(tīng)。表示在捕獲階段觸發(fā),表示在冒泡階段觸發(fā)。 關(guān)于【Step-By-Step】 Step-By-Step (點(diǎn)擊進(jìn)入項(xiàng)目) 是我于 2019-05-20 開(kāi)始的一個(gè)項(xiàng)目,每個(gè)工作日發(fā)布一道面試題。每個(gè)周末我會(huì)仔細(xì)閱讀大家的答案,整理最一份...

    hedge_hog 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<