我正在实现一个执行并行处理的 Java 应用程序:当我的应用程序启动时,会创建属于线程池的 4 个线程。然后,我开始接收添加到LinkedBlockingQueue的对象。每个对象都有一个 ID,根据 ID,执行预定义的任务。我的“队列消费者”是那些被初始化的 4 个线程,它们开始将对象从队列中取出,并执行与每个对象对应的任务。
可以定义每个对象将在哪个线程中处理?我想“为每个线程安排任务”。
例如:
- 当第一个对象从队列中取出时,他将被 Thread1 处理。
- 如果第二个对象的 ID 与第一个不同,它将由 Thread2 处理。
- 如果第三个对象与第一个对象具有相同的 ID,它将“转到 Thread1”。
我该如何实施?
谢谢