[問題] 不同interval的Task處理方式

看板java作者 (ahli)時間10年前 (2015/07/05 18:06), 編輯推噓0(005)
留言5則, 3人參與, 最新討論串1/1
大家好,因為不太熟Java Executor Thread Pool的運作原理, 最近工作上剛好又碰到需要使用Multi thread解決的問題,所以想請教一下。 需求大概是這樣: 1.可以讓User排程去Ping設備,且User可以指定他想要的參數 2.參數包含Ping的頻率及ip 3.可以排程的數目沒有限制 (也就是說,假設目前有N個排程,每個排程指定的IP和頻率可能都不一樣) 目前是打算用ScheduledExecutorService來做, 但想請問的是,我需要的Worker Thread數目一定要和排程(task)的數目一樣多嗎? 有1000個排程就一定要有1000個Thread去handle這樣... 還是說有什麼其他更好/合理(或更省Thread..-.-)的方法? 這問題可能很基本,如果太簡單希望也能給個方向就好, 感謝... -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.27.94.228 ※ 文章網址: https://www.ptt.cc/bbs/java/M.1436090774.A.AD4.html

07/05 22:15, , 1F
不用,schedule時間到了才會去Thread pool找閒置的thread做
07/05 22:15, 1F

07/05 22:15, , 2F
沒在執行的是不會用到thread的
07/05 22:15, 2F

07/05 22:18, , 3F
當然thread太少可能有些task就要等,就不會按時執行
07/05 22:18, 3F

07/06 00:48, , 4F
看來是誤會reuse thread的方式了..感謝指點
07/06 00:48, 4F

07/07 22:05, , 5F
take a look at Quartz
07/07 22:05, 5F
文章代碼(AID): #1LcG6MhK (java)
文章代碼(AID): #1LcG6MhK (java)