![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JUC
YaDe.
这个作者很懒,什么都没留下…
展开
-
Java并发编程——阻塞队列
阻塞队列 一、阻塞队列(BlockingQueue ) 四种操作方式 方式 抛出异常 不抛出异常,有返回值 阻塞等待 超时等待 添加 add() offer() put() offer(E e,long timeout, TimeUnit unit)重载方法 移除 remove() poll() take() poll(long timeout, TimeUnit unit)重载方法 检测队首元素 element() peek() 无 无 public class Blocki原创 2020-12-20 15:36:22 · 195 阅读 · 0 评论 -
Java并发编程——线程池
线程池 线程池核心:三大方法,七大参数,四种拒绝策略 池化技术: 程序的运行的本质:占用系统的资源!优化资源的使用,可以考虑使用池化技术 池化技术:事先准备好一些资源,有人要用,就来这里拿,用完之后还给我 线程池的好处: 降低资源的消耗 提高响应速度 方便管理 线程的复用,可以控制最大并发数,管理线程 阿里巴巴java开发手册中对于线程池的生成是这样规定的: 一、创建线程池的三大方法 public class ExecutorDemo { public static void ma原创 2020-12-20 14:28:43 · 170 阅读 · 1 评论 -
Java并发编程——锁
锁 一、Lock锁 Lock是一个接口,有三个实现类,可重入锁是最常用的一个实现类。 公平锁:多个线程按照申请锁的顺序去获得锁,线程会直接进入队列去排队,永远都是队列的第一位才能得到锁。 优点:所有的线程都能得到资源,不会饿死在队列中。 缺点:吞吐量会下降很多,队列里面除了第一个线程,其他的线程都会阻塞,cpu唤醒阻塞线程的开销会很大。 public class Lock1 { public static void main(String[] args) { Tick原创 2020-12-19 15:57:58 · 113 阅读 · 0 评论 -
Java并发编程——初识JUC
文章目录初始JUC一、什么是JUC二、进程和线程2.1 进程和线程2.2 并行和并发2.3 Java线程有几个状态2.4 wait/sleep的区别 初始JUC 一、什么是JUC JUC是java.util .concurrent包的简称,这是一个处理线程的工具包。 二、进程和线程 2.1 进程和线程 进程:一个进程,qq.exe之类的程序的集合,一个进程往往可以包含很多个线程,至少包含一个 线程:操作系统能够进行运算调度的最小单位 Java默认有两个线程,main和GC这两个线程 Java真的可原创 2020-12-17 22:41:06 · 165 阅读 · 0 评论