我是一个热衷者,对虚拟线程很感兴趣。文档中提到,将线程固定在同步块中是其中一个条件,并且在这些情况下使用信号量。这里是关于JEP的文档链接:https://openjdk.org/jeps/444
有两种情况下,虚拟线程无法在阻塞操作期间解除挂载,因为它被固定在其载体上:
当它执行同步块或方法中的代码时,
或者当它执行本地方法或外部函数时。
这是因为同步块的实现是自旋锁,线程不会停止执行指令,而信号量会在几次尝试后让出执行权。
这是因为同步块的实现是自旋锁,线程不会停止执行指令,而信号量会在几次尝试后让出执行权。