![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
………多线程
Francis-Leo
管理自己的时间,流程化工作
展开
-
【Java】多线程锁
Lock Lock提供了与synchronized类似的同步功能,只是在显式的获取和释放锁,因此有了锁获取和释放的可操作性、可中断的获取锁以及超时获取锁等多种同步特性。代码实例:Lock lock = new ReentrantLock();lock.lock();try{}finally{ lock.unlock();}特性尝试非阻塞地获取锁:当前线程...原创 2018-06-08 09:01:23 · 213 阅读 · 3 评论 -
【Java】多线程相关概念
引言多线程可以并行的处理大量的数据,提高程序的效率 为了这个目标,定义了问题,也遇到了问题,相关概念也应用而生并发编程模型的关键问题线程通信:交换信息机制,分为 共享内存(隐式通信)和消息传递(显式通信) 线程同步:控制操作发生相对顺序机制,分为 共享内存(显式同步)和消息传递(隐式同步) 重排序重排序指编译器和处理器为了优化程序性能而对指令序列进行重...原创 2018-06-03 16:04:34 · 187 阅读 · 2 评论 -
【Java】多线程基础
线程的状态 状态名称 说明 new 初始状态:线程被构建,但没有调用start()方法 runnable 运行状态:就绪和运行统称“运行中” blocked 阻塞状态:线程阻塞于锁 waiting 等待状态:线程进入等待状态,需要等待其他线程通知或中断 terminated 终止状态:线程已执行完毕1. 线程创...原创 2018-06-05 07:17:25 · 421 阅读 · 3 评论 -
【Java】多线程 并发工具类 & 线程池
ConcurrentHashMapHashMap线程不安全,可能导致程序死循环;HashTable效率低下,使用synchronized保证线程安全;ConcurrentHashMap采用锁分段技术,有效提升并发访问率;ConcurrentLinkedQueue基于链接节点的无界线程安全队列;采用先进先出的规则对节点进行排序;添加的元素会添加到队列的尾部;获取的元素...原创 2018-06-09 23:39:40 · 858 阅读 · 2 评论 -
【Java笔记】Thread
相关概念线程是比进程更小的执行单位,也称作“轻量级进程”线程是一个进程中独立的控制流,可以并发执行自身没有入口和出口,不能自动运行,由进程启动执行,完成后自行终止可以多个线程并发执行,Java平台的线程调度是抢占式的基础方法线程的互斥Java中用关键字synchroniz原创 2017-01-10 18:40:09 · 522 阅读 · 14 评论 -
【Java】多线程 并发容器 & 原子操作类
并发容器ConcurrentHashMapHashMap线程不安全,可能导致程序死循环;HashTable效率低下,使用synchronized保证线程安全;ConcurrentHashMap采用锁分段技术,有效提升并发访问率;ConcurrentLinkedQueue基于链接节点的无界线程安全队列;采用先进先出的规则对节点进行排序;添加的元素会添加到队列的尾...原创 2018-06-10 09:37:11 · 534 阅读 · 3 评论 -
【Java】多线程框架
Fork / Join 框架Fork/Join框架是Java7提供的用于并行执行任务的框架 是一个把大任务分割成若干个小任务,最终汇总每个小任务结果后得到大任务结果的框架框架设计分割任务执行任务,合并结果代码实例import java.util.concurrent.ExecutionException;import java.util.concurrent.Fork...原创 2018-06-10 12:09:59 · 1714 阅读 · 5 评论 -
【Java】线程池
概念线程池好处降低资源消耗:重复利用线程,从而降低创建和销毁造成的消耗提高响应速度:任务到达时,可以不需要等到线程创建就能立即执行提高线程的可管理性:线程会耗尽资源,降低稳定性,线程池可以统一分配、调优、监控线程池组成线程池管理器(ThreadPool):用于创建并管理线程池,包括 创建线程池,销毁线程池,添加新任务工作线程(PoolWorker):...原创 2018-09-15 21:48:53 · 317 阅读 · 0 评论