![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
多线程
文章平均质量分 91
李莲花*
一勤万事通 一懒万事空
展开
-
多线程概述(线程创建,方法(等待,通知,加入,睡眠,礼让,中断),上下文切换,死锁,守护线程与用户线程)
在讨论什么是线程前有必要先说下什么是进程,因为线程是进程中的一个实体,线程本身是不会独立存在的。进程是代码在数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,线程则是进程的一个执行路径,一个进程中至少有一个线程,进程中的多个线程共享进程的资源原创 2022-09-30 20:10:03 · 589 阅读 · 0 评论 -
为啥要用线程池?线程池工作原理?创建线程池 | 大别山码将
@为啥要用线程池,线程池的参数含义创建线程和销毁线程的花销是比较大的,频繁的创建线程和销毁线程,可能导致系统资源不足。使用线程池我们可以把创建和销毁的线程的过程去掉使⽤线程池的好处:降低资源消耗。通过重复利⽤已创建的线程降低线程创建和销毁造成的消耗。提⾼响应速度。当任务到达时,任务可以不需要等到线程创建就能⽴即执⾏。提⾼线程的可管理性。线程是稀缺资源,如果⽆限制的创建,不仅会消耗系统资源,还会降低系统的稳定性,使⽤线程池可以进⾏统⼀的分配,调优和监控。线程池创建需要的几个核心参数:co原创 2021-09-27 21:51:15 · 211 阅读 · 0 评论 -
什么是线程安全问题 ?如何解决线程安全问题?锁和非锁机制解决 | 大别山码将
**@什么是线程安全问题 ?如何解决线程安全问题?(答:加锁…,讲了 java 的悲观锁实现 synchorized、乐观锁的 CAS ) ;有没有非锁解决的?多线程并发运行的时候,有可能会出现多个线程同时访问一个资源的情况。(这种资源可以是各种类型的的资源:一个变量、一个对象、一个文件、一个数据库表等)。这时就会存在一个问题:由于每个线程执行的过程是不可控的,所以很可能导致运行结果和预期结果不一致,或者直接导致程序出错。这就是线程安全问题。那么要解决线程安全问题,就要保证在同一时刻,只能有一个线程访问原创 2021-09-27 21:04:49 · 469 阅读 · 1 评论 -
JUC多线程面试典籍30+ | 大别山码将
JUC什么是线程和进程?进程:进程是程序的⼀次执⾏过程,是系统运⾏程序的基本单位,因此进程是动态的。系统运⾏⼀个程序即是⼀个进程从创建,运⾏到消亡的过程。在 Java 中,当我们启动 main 函数时其实就是启动了⼀个 JVM 的进程,⽽ main 函数所在的线程就是这个进程中的⼀个线程,也称主线程。程序由指令和数据组成,但这些指令要运行,数据要读写,就必须将指令加载至CPU,数据加载至内存,在指令进行运行过程中还需要用到磁盘,网络等设备。进程就是用来加载指令,管理内存,管理IO的当一个程序被运原创 2021-09-24 23:36:37 · 194 阅读 · 0 评论