多线程
DoReMiFaSolLaTi
这个作者很懒,什么都没留下…
展开
-
springboot优雅的使用线程池
简单两部即可定义Executorimport lombok.extern.slf4j.Slf4j;import org.springframework.beans.factory.annotation.Value;import org.springframework.context.annotation.Bean;import org.springframework.context.a...原创 2019-11-21 11:26:34 · 810 阅读 · 0 评论 -
线程的状态
Java线程在运行的生命周期中可能处于6种不同的状态,在给定的一个时刻,线程只能处于其中的一个状态。 状态名称 说明 NEW 初始状态,线程被构建,但还没有调用start()方法 RUNNABLE 运行状态, Java线程将os中的就绪和运行两种状态笼统地称作“运行中” BLOCKED 阻塞状态,表示线程阻塞于锁 WAITING 等...原创 2018-03-02 16:21:17 · 195 阅读 · 0 评论 -
Executor线程池
线程池,是指管理一组同构工作线程的资源池。工作线程的任务是从工作队列中获取一个任务,执行任务,然后返回线程池并等待下一个任务。1.优点通过重用现有的线程而不是创建新线程,可以避免频繁创建和销毁线程的开销。线程池中的工作线程是创建好的,因此可以避免由于等待创建线程而引起的延迟,提高了响应性。可以适当调整线程池的大小,使处理器保持忙碌状态,也可以防止过多线程相互竞争资源导致资...原创 2018-07-31 15:04:07 · 161 阅读 · 0 评论 -
Java并发容器
同步容器将所有容器状态的访问都串行化,以实现线程安全性。这种方式的代价会严重降低并发性,多个线程竞争容器的锁时,吞吐量将严重降低。并发容器是针对多个线程并发访问设计的。通过并发容器来代替同步容器,可以极大地提高伸缩性并降低风险。1.ConcurrentHashMap与HashMap一样,ConcurrenHashMap也是一个基于散列的Map,但它使用了一种完全不同的加锁策略来提供...原创 2018-08-06 11:55:07 · 198 阅读 · 0 评论 -
Java多线程的上下文切换
Java多线程会频繁的创建和切换上下文,这样的操作会影响多线程的执行速度.##上下文切换JAVA虚拟机的多线程是通过线程轮流切换并分配CPU时间片的方式实现的.CPU通过给每个线程分配CPU时间片来让线程执行代码,时间片是CPU分配给线程执行的时间,CPU通过不停的切换线程,并给线程时间片让它执行指令,这个时间片非常非常的短,一般是几十毫秒,让我们感觉多个线程在同时执行.CPU通过这种...原创 2019-05-27 21:46:37 · 556 阅读 · 0 评论 -
等待/通知机制
等待/通知机制,是指一个线程A调用对象O的wait()方法进入等待状态,另一个线程B调用对象O的notify()或notifyAll()方法,线程A收到通知后从对象O的wait()方法返回.等待/通知机制用来完成等待方和通知方中间的交互工作./** * @Auther: xieyuhui * @Date: 2019-06-05 08:55 * @Description: 等待通知demo...原创 2019-06-05 09:36:17 · 309 阅读 · 0 评论