![](https://img-blog.csdnimg.cn/8118b168eaab4938ab6efdbba295d986.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
并发
文章平均质量分 68
并发知识
gzh-程序员灿灿
这个作者很懒,什么都没留下…
展开
-
显示锁和AQS
显式锁和AQS Java提供一系列的显示锁类,均位于java.util.concurrent.locks包中。 显示锁范式 import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReentrantLock; /** * 使用显示锁的范式 * lock.lock(); * try { * count++; * } finally { * lock.unlock(); * } */ public c原创 2021-07-24 21:01:43 · 116 阅读 · 0 评论 -
synchronized同步和join用法
1 synchronized同步 public class Account { private int balance; public Account(int balance) { this.balance = balance; } public int getBalance() { return balance; } /* * add方法和withdraw方法不是同步方法的情况下: * 两个线程操作同一个Account对象,并访问Account对象中add和with原创 2021-07-24 20:53:54 · 265 阅读 · 0 评论 -
队列和线程
队列和线程 队列能够解决很多需求,如消息推送,发布,订阅,根据需求完成业务逻辑处理高并发请求。 JDK 自带FIFO(FIFO First Input First Output先进先出)队列的选择。如何正确选择队列呢? 最重要的一点是要保证线程安全,使用BlockingQueue阻塞队列,它就是一个阻塞队列,那何为阻塞队列? 简单来说,就是在BlockingQueue为空时从队头取数据将会被阻塞,因为此时还没有数据可取,一旦队列中有数据了,取数据的线程就会释放得到了数据;如果BlockingQueue有容量原创 2021-07-24 20:52:06 · 893 阅读 · 0 评论