[請益] 排程相關的演算法(優先佇列)
目前工作大概一年多
想問一下各位關於排程相關的算法
https://i.imgur.com/DBthnys.png
我在書上觀看這個高性能定時器的章節
他提到每一秒掃描整張大表的壞處有二
1.任務的約定執行時間可能跟當前時間距離很久,所以掃描是徒勞的
2.如果列表很大,這會很徒勞
關於這兩點我都可以理解 每秒掃描會有這兩個壞處
也理解優先佇列可以避免這些問題
但我的問題是,這真的要動用到優先佇列嗎?
我對電腦底層不熟悉
沒有辦法直接去設定說
假設每個任務只要做十分鐘就一定可以做完好了
八點做A任務
九點做B任務
十點做C任務
我看很多框架都有支援這種方式
我朋友是跟我說那些框架可能底層也是靠priority queue來做的
我是不太理解,如果都可以每隔某段時間做某件事
電腦應該也可以指定時間做事吧?
為何一定要依靠每秒輪詢polling 或是 priority queue來做
這是我查到的排程相關算法的資料,每秒輪詢應該就是下面的
Round Robin (RR)
https://data-flair.training/blogs/scheduling-algorithms-in-operating-system/
希望各位版友可以解惑
謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.160.137.197 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1666355061.A.EE8.html
推
10/21 20:39,
1年前
, 1F
10/21 20:39, 1F
→
10/21 20:39,
1年前
, 2F
10/21 20:39, 2F
→
10/21 20:41,
1年前
, 3F
10/21 20:41, 3F
→
10/21 20:41,
1年前
, 4F
10/21 20:41, 4F
我的問題是用list或是陣列去存時間也可以吧
但是書上說的好像
要每秒去go through 整個array 看有沒有發生
現在時間等於array[i]的時間
但是沒有其他更簡單的做法嗎?除了pq外
※ 編輯: ntpuisbest (118.160.137.197 臺灣), 10/21/2022 20:45:10
推
10/21 20:55,
1年前
, 5F
10/21 20:55, 5F
→
10/21 21:03,
1年前
, 6F
10/21 21:03, 6F
→
10/21 21:03,
1年前
, 7F
10/21 21:03, 7F
→
10/21 21:03,
1年前
, 8F
10/21 21:03, 8F
→
10/21 21:03,
1年前
, 9F
10/21 21:03, 9F
→
10/21 21:07,
1年前
, 10F
10/21 21:07, 10F
→
10/21 21:07,
1年前
, 11F
10/21 21:07, 11F
→
10/21 21:08,
1年前
, 12F
10/21 21:08, 12F
→
10/21 21:08,
1年前
, 13F
10/21 21:08, 13F
推
10/21 21:09,
1年前
, 14F
10/21 21:09, 14F
→
10/21 21:10,
1年前
, 15F
10/21 21:10, 15F
→
10/21 21:20,
1年前
, 16F
10/21 21:20, 16F
→
10/21 21:30,
1年前
, 17F
10/21 21:30, 17F
→
10/21 21:31,
1年前
, 18F
10/21 21:31, 18F
→
10/21 21:31,
1年前
, 19F
10/21 21:31, 19F
→
10/21 21:32,
1年前
, 20F
10/21 21:32, 20F
→
10/21 21:32,
1年前
, 21F
10/21 21:32, 21F
→
10/21 21:33,
1年前
, 22F
10/21 21:33, 22F
→
10/21 21:35,
1年前
, 23F
10/21 21:35, 23F
→
10/21 21:35,
1年前
, 24F
10/21 21:35, 24F
→
10/21 21:38,
1年前
, 25F
10/21 21:38, 25F
→
10/21 21:39,
1年前
, 26F
10/21 21:39, 26F
→
10/21 21:39,
1年前
, 27F
10/21 21:39, 27F
推
10/21 21:42,
1年前
, 28F
10/21 21:42, 28F
推
10/21 21:47,
1年前
, 29F
10/21 21:47, 29F
→
10/21 21:47,
1年前
, 30F
10/21 21:47, 30F
推
10/21 21:51,
1年前
, 31F
10/21 21:51, 31F
推
10/21 21:53,
1年前
, 32F
10/21 21:53, 32F
推
10/21 22:17,
1年前
, 33F
10/21 22:17, 33F
→
10/21 22:18,
1年前
, 34F
10/21 22:18, 34F
→
10/21 22:20,
1年前
, 35F
10/21 22:20, 35F
→
10/21 22:25,
1年前
, 36F
10/21 22:25, 36F
→
10/21 22:26,
1年前
, 37F
10/21 22:26, 37F
推
10/21 22:28,
1年前
, 38F
10/21 22:28, 38F
推
10/21 23:17,
1年前
, 39F
10/21 23:17, 39F
→
10/21 23:19,
1年前
, 40F
10/21 23:19, 40F
推
10/21 23:45,
1年前
, 41F
10/21 23:45, 41F
→
10/21 23:45,
1年前
, 42F
10/21 23:45, 42F
→
10/21 23:46,
1年前
, 43F
10/21 23:46, 43F
→
10/21 23:48,
1年前
, 44F
10/21 23:48, 44F
→
10/21 23:48,
1年前
, 45F
10/21 23:48, 45F
→
10/22 12:28,
1年前
, 46F
10/22 12:28, 46F
討論串 (同標題文章)