且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

java - AQS中源码疑问

更新时间:2022-10-14 23:39:25

并不冲突吧,setState只是一个写操作,并没有管原来的state,比如state原本是0,线程1和线程2分别读取了这个值0,线程1把它set成1,然后线程2打算把它set成2,是可以成功的,尽管state已经是1了,而且线程2也知道,但是无所谓,线程2只是把它set成2。下面那个方法就不会了吧。