import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; public class GFCConcurrentExample { private static final int THREAD_POOL_SIZE = 4; private static final int NUM_TASKS = 10; public static void main(String[] args) { ExecutorService executorService = Executors.newFixedThreadPool(THREAD_POOL_SIZE); ConcurrentHashMap<Integer, String> concurrentHashMap = new ConcurrentHashMap<>(); for (int i = 0; i < NUM_TASKS; i++) { final int taskId = i; executorService.execute(() -> { String taskName = "Task-" + taskId; concurrentHashMap.put(taskId, taskName); System.out.println("Added task: " + taskName); }); } executorService.shutdown(); while (!executorService.isTerminated()) { } System.out.println("Task results:"); for (int i = 0; i < NUM_TASKS; i++) { System.out.println(concurrentHashMap.get(i)); } } }


上一篇:
下一篇:
切换中文