摘要:
概述 AQS的核心思想是,如果被请求的共享资源空闲,则将当前请求资源的线程设置为有效的工作线程,并将共享资源设置为锁定状态,如果被请求的共享资源被占用,那么就需要一套线程阻塞等待以及被唤醒时锁分配的机制,这个机制AQS是用CLH队列锁实现的,即将暂时获取不到锁的线程加入到队列中。 AQS是将每一条请 阅读全文
摘要:
1.1乐观锁 VS 悲观锁 乐观锁与悲观锁是一种广义上的概念,主要区别在对于同步资源的处理方式的不同。在Java和数据库中都有此概念对应的实际应用。 对于乐观锁而言: 认为自己在使用数据时不会有别的线程修改数据,所以不会添加锁,只是在更新数据的时候去判断之前有没有别的线程更新了这个数据。如果这个数据 阅读全文
摘要:
虽然这个不是标准的数据结构,但是在java中还是挺重要的结构类。所以需要好好了解一下 使用 该类的使用非常简单,大概就下面的两个操作。 static final ThreadLocal<T> sThreadLocal = new ThreadLocal<T>(); sThreadLocal.set( 阅读全文