有没有办法确定 Java ThreadPoolExecutor 中执行任务的优先级?我面临的问题是,当基于相同的指定执行标识符时,需要按顺序执行一些线程。
它们都提交给同一个 ThreadPoolExecutor,但由于处理延迟,任务 A2 可能会先于任务 A1(具有相同的执行标识符)完成。它们应该遵循与进入时相同的顺序,同时不阻止其他任务(具有不同执行标识符)的执行(例如 B1、B2、C1 等)。
是否有处理此类问题的通用模式?例如,任务A1、B1、B2、A2、C1进入池进行处理。应按以下方式处理它们:
A1
B1
B2(如果 B1 已完成,否则等待 B1 完成,同时 A2 或 C1 轮流)
A2(如果A1已完成,否则等待A1完成,同时B2完成,如果尚未开始,或C1轮流)
C1
最佳答案
关于java - 确定 Java ThreadPoolExecutor 中执行任务的优先级,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24531375/