更改 PriorityBlockingQueue 中的现有任务优先级

change existing task prority in PriorityBlockingQueue

如果某个任务已经在阻塞队列中(假设轮询已满),我如何更改它的优先级并且我现在希望它具有更高的优先级?

E.G:实现这个答案

Specify task order execution in Java

我将线程轮询设置为 3,发送 8 个优先级均为 1 的任务。

现在 3 个正在执行,5 个正在等待可用线程。

现在我希望等待列表中的任务编号 3 的优先级为 2,这意味着当一个线程在其他 4 个之前打开时它会立即执行。

能做到吗?

P.S - 我想在 android 应用程序上执行此操作,推荐吗?

如果它已经在 PriorityQueue 中,则更改优先级不会有任何影响。您必须将其移除并重新插入。