亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

需要提交多少次調用才能與 newWorkStealingPool 一起使用?

需要提交多少次調用才能與 newWorkStealingPool 一起使用?

梵蒂岡之花 2023-11-01 21:17:53
我正在閱讀有關Executors.newWorkStealingPool 的內容,并且想知道如何設置它。我的線程將從LinkedBlockingQueue中拉出,因此將連續運行(除非在“take”調用處被阻止)。假設我不知道運行此代碼的主機上將提供多少個內核。我如何知道要添加多少個 Runnable 對象實例?Runnable processRecord = () -> {    try {        consumeRecord(blockingQueue.take());    } catch (InterruptedException e) {        e.printStackTrace();    }public void setup() {    ExecutorService workPool = Executors.newWorkStealingPool();-----> 我傳入了多少個線程實例?    workPool.submit(processRecord);}更有可能的是 - 我如何(正確)使用這個線程構造?
查看完整描述

1 回答

?
慕的地10843

TA貢獻1785條經驗 獲得超8個贊

Runnables提交到工作竊取池 ( ForkJoinPool) 會執行一次(就像在任何其他線程池中一樣)。

對于示例實現,processRecord您需要為中的每個元素提交一個blockingQueue


查看完整回答
反對 回復 2023-11-01
  • 1 回答
  • 0 關注
  • 97 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號