成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

去字節面試被面這題能答上來嗎?談談你對時間輪的理解?

開發 前端
時間輪,環狀數組里面的每個元素,都是用來存儲定時任務的容器,當我們向時間輪里面添加一個定時任務的時候,我們會根據定時任務的執行時間計算它所存儲的數組下標。當然,有可能在某個時間刻度上會存在多個定時任務,這個時候會采用雙向鏈表的方式來存儲。

?1.什么是時間輪

時間輪,簡單理解就是一種=個用來存儲定時任務的環狀數組,它的工作原理和鐘表的表盤類似。

圖片

它由兩個部分組成, 一個是環狀數組,另一個是遍歷環狀數組的指針。

首先,要定義一個固定長度的環狀數組,然后數組的每一個元素代表一個時間刻度,假設每個刻度間隔是 1s,那么長度為 8 的數組,就代表 8 秒鐘。

然后,就是有一個指針,這個指針按照順時針無限地循環這個數組,每隔1個最小的時間單位就前進一個數組索引。

圖片

這個指針完整地轉1圈,就代表 8 秒鐘,轉兩圈表示 16 秒,假設從 0 點 0 分 0 秒開始,轉

一圈以后就到了 0 點 0 分 9 秒鐘。

2.工作原理

時間輪,環狀數組里面的每個元素,都是用來存儲定時任務的容器,當我們向時間輪里面添加一個定時任務的時候,我們會根據定時任務的執行時間計算它所存儲的數組下標。當然,有可能在某個時間刻度上會存在多個定時任務,這個時候會采用雙向鏈表的方式來存儲。

圖片

當指針指向某個數組的時候,就會把這個數組中存儲的任務取出來,然后遍歷這個鏈表逐個運行里面的任務。

那如果某個定時任務的執行時間大于環形數組所表示的長度,一般可以使用一個圈數來表示該任務的延遲執行時間。比如,1個第 16 秒要執行的任務,那意味著這個任務應該是在第2圈的數組下標 為0 的位置執行。

3.優、缺點分析

使用時間輪的方式來管理多個定時任務的好處有很多,我認為有兩個比較重要的優點:

(1)減少定時任務添加和刪除的時間復雜度,提升性能。

(2)可以保證每次執行定時器任務都是 O(1)復雜度,在定時器任務密集的情況下,性能優勢非常明顯。

當然,時間輪也有缺點,對于執行時間非常嚴格的任務,時間輪不是很適合,因為時間輪算法的精度取決于最小時間單元的粒度。假設以 1s 為一個時間刻度,那小于 1s 的任務就無法被時間輪調度。

時間輪算法在很多框架中都有用到,比如 Dubbo、Netty、Kafka 等。

時間輪算法也是一個比較經典的設計。使用范圍比較廣,但是在實際應用中,大部分同學接觸非常少。我認為這種設計思想或者這種數據結構,在我們實際應用中的某些特定場景也是可以借鑒和使用的。比如定時重試、衰減重試等等。

責任編輯:武曉燕 來源: Tom彈架構
相關推薦

2022-03-21 14:09:19

面試C語言代碼

2021-06-29 10:21:54

this面試前端

2019-06-06 10:00:22

2021-03-10 08:04:11

this面試題JavaScript

2023-11-10 08:44:13

分布式鎖分布式系統

2009-12-11 09:09:46

Windows 7全球派對

2024-07-24 13:58:21

2022-09-09 10:15:06

OAuthJava

2022-03-21 09:05:18

volatileCPUJava

2024-10-24 16:14:43

數據傳輸CPU零拷貝

2025-03-21 00:00:05

Reactor設計模式I/O 機制

2025-02-21 15:25:54

虛擬線程輕量級

2024-09-27 15:43:52

零拷貝DMAIO

2023-11-28 12:25:02

多線程安全

2022-06-30 09:10:33

NoSQLHBaseRedis

2019-11-14 16:05:29

TCPHTTP前端

2020-09-24 10:30:29

Redis數據庫面試

2025-04-09 00:00:00

2024-08-27 12:36:33

2023-10-11 06:54:18

字節面試CPU
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日本精品视频在线观看 | 九九热精品在线 | 2018天天干天天操 | 国产精品久久久久久久久久久免费看 | 久久综合狠狠综合久久综合88 | 欧美精品乱码99久久影院 | 亚洲图片一区二区三区 | www国产亚洲精品久久网站 | 丁香久久| 午夜激情影院 | 久在线视频播放免费视频 | 美女黄色在线观看 | a级在线免费视频 | 亚洲一二三区不卡 | 九色一区| h视频在线免费 | 久久久久久久久99 | 欧美亚洲国产日韩 | 日本二区在线观看 | 亚洲成人精品一区二区 | 拍戏被cao翻了h承欢 | a级片播放 | 精品毛片 | 国产精品欧美一区二区三区不卡 | 三级免费 | 在线视频日韩精品 | 国产在线观看不卡一区二区三区 | 免费在线a视频 | 亚州精品天堂中文字幕 | 中文成人在线 | 亚洲视频免费在线看 | 草草视频在线观看 | 拍真实国产伦偷精品 | 国产精品黄视频 | www.v888av.com| 岛国av免费在线观看 | 久久蜜桃av一区二区天堂 | 日本亚洲一区 | 激情欧美一区二区三区中文字幕 | 欧美a在线 | 亚洲精品乱码久久久久久蜜桃 |