![](https://img-blog.csdnimg.cn/20190918140158853.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
java多线程
文章平均质量分 91
java多线程学习、总结
die_job
这个作者很懒,什么都没留下…
展开
-
Java线程池
文章目录一、线程池简介二、Executor三、ThreadPoolExecutor一、线程池简介多线程可以提高计算机的使用效率和程序的性能,但无限制的使用线程,除了使线程的创建和销毁变得更加频繁影响系统性能外,也会耗尽CPU和内存资源,因此对线程的使用需有一个度,使线程数量在有限的范围内。和数据库连接池类似,我们可以使用线程池让创建的线程进行复用,从而避免系统频繁的创建和销毁线程,并使线程数量在一定范围内。二、ExecutorExecutor是Java为了更好的控制多线程而提供的一套框架,其本质就原创 2021-10-27 10:23:01 · 88 阅读 · 0 评论 -
Java多线程之锁的基本使用
文章目录一、重入锁一、重入锁重入锁是用于线程间协同工作的一种机制,可以完全替代synchronized关键字,在java中为java.util.concurrent.locks包下的ReentrantLock类。之所以叫重入锁,是因为该锁可以反复获取多次,在释放锁的时候也必须释放相同次数。与synchronized相比,重入锁必须在程序中指出何时加锁,何时释放锁,因此对程序的逻辑控制灵活性要远远好于synchronized。public class ReentrantLockTest impleme原创 2021-10-22 16:32:09 · 1052 阅读 · 0 评论 -
Java线程基础
文章目录一、创建线程1、直接创建线程2、通过Runnable创建线程二、终止线程三、线程中断四、wait和notify五、suspend和resume六、join和yield一、创建线程1、直接创建线程在Java中线程使用Thread类表示,因此创建线程最简单的方法就是new 一个Thread类:Thread myThread = new Thread();myThread.start();线程创建之后,调用它的start()方法就可以让线程运行,线程Thread有一个run()方法,star原创 2021-10-21 11:24:55 · 103 阅读 · 0 评论 -
并发基础概念
文章目录一、并发基础概念1、进程与线程2、同步与异步3、并行与并发4、临界区4、死锁、饥饿和活锁5、并发级别6、线程的三大特性为什么使用多线程?一般来说,主要出于两个目的,第一是为了获得更好的性能,第二是业务需要;一、并发基础概念1、进程与线程进程是程序运行时的实体,是系统进行资源分配和调度的基本单位,在当代面向线程设计的计算机结构中,进程是线程的容器。线程相当于轻量级进程,是程序执行的最小单位,使用多线程而不使用多进程去进行程序的并发,主要是因为线程间的切换和调度成本远小于进程。2、同步与异原创 2021-07-09 16:13:19 · 253 阅读 · 0 评论