JDK1.4.2自旋锁默认是关闭的,可以使用-XX:+UseSpinning参数来开启,JDK1.6默认已经开启,自旋锁等待本身虽然避免了线程切换的开销,但它是要占用处理器时间的。如果自旋锁超过了限定的次数仍然没有成功获得锁,就应当使用传统的方式去挂起线程了,自旋次数的默认是10次,用户可以使用参数-XX:PreBlockSpin。
自适应自旋意味着自旋的时间不再固定了,而是由前一次在同一个锁上的自旋时间及锁的拥有者的状态来决定
JDK1.4.2自旋锁默认是关闭的,可以使用-XX:+UseSpinning参数来开启,JDK1.6默认已经开启,自旋锁等待本身虽然避免了线程切换的开销,但它是要占用处理器时间的。如果自旋锁超过了限定的次数仍然没有成功获得锁,就应当使用传统的方式去挂起线程了,自旋次数的默认是10次,用户可以使用参数-XX:PreBlockSpin。
自适应自旋意味着自旋的时间不再固定了,而是由前一次在同一个锁上的自旋时间及锁的拥有者的状态来决定