【发布时间】:2015-11-08 06:03:49
【问题描述】:
我想知道诸如volatile 变量或finally 块释放锁之类的发生前关系是否与优先级反转有关?我知道这些强加了一种发生之前的关系,编译器无法重新排序指令。它是否也会影响 优先级反转,还是它们是独立的概念?谁能给我一个例子来更好地理解这一点?
【问题讨论】:
-
我认为优先级倒置与您提到的其他任何事情完全无关。优先级倒置是关于调度不同优先级的任务,
volatile和finally可能与此有什么关系? -
优先级反转可能涉及一个锁(不)被释放,是的。但我不确定您在优先级反转和内存屏障/指令重新排序之间询问什么联系。你能澄清你在问什么吗?你认为可能有什么联系?
标签: java multithreading concurrency happens-before priority-inversion