目前我所整理的知识点:
1、由于CPU高速缓存和主存之间隔离,导致共享变量在并发更新时,可能导致并发问题。
2、java的synchronized关键字,可以保证并发三性,目前并不清楚其实现机制,猜想可能是通过系统调用来保护的。
3、AQS本质上是通过java的LockSupport的park()和unpark(),以及一个队列结构来实现的。
问题:
AQS能够保证lock保护的代码块一定不会有并发问题,但代码块中的共享变量,是如何保证并发三性的?难道LockSupport有和Synchronized相同的效果吗?