Java并发
啊杰eboy
每天进步一点点~
展开
-
Java并发之线程池学习笔记
JUC包下有一个重要的线程池的实现,大大优化方便了我们对线程的使用,而不再是传统的new一个Thread。线程池相对传统的直接创建线程主要有三个优点:1.统一管理线程,可以重用存在的线程,避免多次的创建、消亡的开销,使得性能表现得更好2.可以有效控制最大并发线程数,提高系统资源利用率,同时可以避免过多资源的竞争,避免阻塞3.提供定时执行、定期执行、单线程、并发数控制等功能如何使用线...原创 2018-12-12 22:44:22 · 312 阅读 · 0 评论 -
Java并发之死锁与解决方法
死锁 线程死锁是指由于两个或者多个线程互相持有对方所需要的资源,导致这些线程处于等待状态,无法前往执行。当线程进入对象的synchronized代码块时,便占有了资源,直到它退出该代码块或者调用wait方法,才释放资源,在此期间,其他线程将不能进入该代码块。当线程互相持有对方所需要的资源时,会互相等待对方释放资源,如果线程都不主动释放所占有的资源,将产生死锁。产生死锁的四个条件1.互...原创 2018-12-12 23:14:07 · 869 阅读 · 0 评论 -
Java并发之AQS学习笔记
Java并发包(JUC)中有几个重要并发类如CounDownLatch、Semaphore、CyclicBarrier以及我们重要的可重入锁ReentrantLock等。它们的底层实现就是基于AQS实现的。看过源码之后,会惊叹设计者的设计之妙!说到AQS,在Java并发中,还有一种CAS算法,它是Java并发包下原子类的实现的底层算法,这个笔者会另起篇幅来做学习总结。什么是AQSAbstr...原创 2018-12-13 21:28:42 · 463 阅读 · 0 评论