簡體   English   中英

如何通過執行器服務使用數據隊列

[英]How to use data queueing with executor Service

我正在學習 Executor 服務並試圖了解如何與線程池中的線程共享數據列表。 我的可運行方法需要從列表中讀取數據並進行處理。

   Runnable runnable = () -> {
      System.out.println("Inside : " + Thread.currentThread().getName());
      process(list.take());
    };
  ExecutorService executor = Executors.newFixedThreadPool(threadCount);
  executorService.submit(runnable);

池中的所有線程應該只處理列表中的不同元素一次

您可以遍歷列表的每個元素並將它們提交給執行程序:

list.forEach(e -> executor.submit(() -> process(e)));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM