java多线程相关概念

在Java多线程编程中,有几个关键的术语需要理解:

1.线程(Thread):线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位。

2.进程(Process):进程是系统进行资源分配和调度的一个独立单位,每个进程都有自己私有的地址空间。

3.同步(Synchronization):当多个线程访问同一个资源时,为了保证资源的完整性和一致性,需要对线程进行同步。

4.互斥(Mutual Exclusion, Mutex):指在同一时刻只允许一个线程修改共享资源,其他试图修改该资源的线程必须等待,直到获得许可。

5.竞态条件(Race Condition):当两个或多个线程能随意地以不确定的顺序执行时,程序的输出依赖于线程的调度,可能导致不可预测的结果。

6.临界区(Critical Section):访问共享资源的代码区域,必须互斥执行。

7.死锁(Deadlock):两个或多个线程无限期地等待对方持有的资源,导致程序无法继续执行。

8.活锁(Livelock):两个线程不断重复相同的动作,但没有进展。

9.饥饿(Starvation):一个线程由于优先级低或资源分配问题,永远得不到执行的机会。

10.安全序列(Safe Sequence):对多个线程的一种排序,使得每个线程都可以在不被其他线程干扰的情况下,依次执行所有操作。

11.线程池(Thread Pool):预先创建一组线程,根据需要分配,用完后返回线程池,而不是每次都创建新线程。

12.Fork/Join Framework:一种用于递归地将任务分解成小任务的框架,适用于充分利用多核处理器的计算密集型任务。

13.守护线程(Daemon Thread):一种为其他线程提供服务的线程,后台运行,不阻止程序退出。

14.用户线程(Native Thread):由应用程序显式创建的线程。

15.Join:一个线程可以加入另一个线程,即等待另一个线程终止。

16.中断(Interrupt):线程可以通过interrupt方法来打断正在运行的线程。

17.线程局部变量(ThreadLocal):为每个线程维护变量的独立副本。

18.执行器框架(Executor Framework):简化线程创建、管理和消亡过程的一组API。

19.并发集合(Concurrent Collections):支持线程安全操作的集合类,如ConcurrentHashMap。

20.原子变量(Atomic Variables):一系列提供了在单个操作中执行多个读写操作的类,如AtomicInteger

相关推荐
WaaTong7 分钟前
《重学Java设计模式》之 原型模式
java·设计模式·原型模式
m0_743048447 分钟前
初识Java EE和Spring Boot
java·java-ee
AskHarries9 分钟前
Java字节码增强库ByteBuddy
java·后端
小灰灰__29 分钟前
IDEA加载通义灵码插件及使用指南
java·ide·intellij-idea
夜雨翦春韭32 分钟前
Java中的动态代理
java·开发语言·aop·动态代理
程序媛小果1 小时前
基于java+SpringBoot+Vue的宠物咖啡馆平台设计与实现
java·vue.js·spring boot
追风林1 小时前
mac m1 docker本地部署canal 监听mysql的binglog日志
java·docker·mac
芒果披萨1 小时前
El表达式和JSTL
java·el
duration~2 小时前
Maven随笔
java·maven
zmgst2 小时前
canal1.1.7使用canal-adapter进行mysql同步数据
java·数据库·mysql