java并发编程

重入的一种实现方法是,为每个锁关联一个计数值和一个所有者线程。当计数值为0时,这个锁就被认为是没有被任何线程持有。当线程请求一个未被持有的锁时,JVM将记下锁的持有者,并且将获取计数值置为1。

synchronized是可重入的。

当读取一个非volatile类型的long或者double变量时,如果对该变量的读操作和写操作在不同的线程中执行,那么很可能会读取到某个值的高32位和另一个值的低32位。

posted on 2017-10-24 16:40  loveflying  阅读(103)  评论(0编辑  收藏  举报