在常见的 workQueue 即 adPoolExecution 架构中,当一个作业到达时,只调用一个线程并由该线程完成工作。相反,我希望所有线程都被调用并且所有线程都执行任务。
我的情况如下。我有 5000 个数据项,我必须对每个数据项运行一个任务。事实证明,一个一个运行它很慢,因此我想在这里使用线程。这里假设我使用了 5 个线程。第一个线程将执行前 1000 个数据项,第二个线程将执行接下来的 1000 个数据项,其他将紧随其后。现在,当需要在这 5000 个数据项上执行的作业到达时,必须调用所有 5 个线程,或者更确切地说,将其从睡眠状态中恢复,以便它可以执行其任务。
这怎么可能在 java 中使用 theadPoolExecution。我知道将同一作业的 5 个副本插入队列可能会有所帮助。但这有很多副作用,比如如果一个线程快速完成它的工作,它将占用其他人的工作。
谢谢 Vineeth