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

相关推荐
雷渊26 分钟前
深入分析mybatis中#{}和${}的区别
java·后端·面试
亦是远方32 分钟前
2025华为软件精英挑战赛2600w思路分享
android·java·华为
花月C1 小时前
Spring IOC:容器管理与依赖注入秘籍
java·开发语言·rpc
ylfhpy1 小时前
Java面试黄金宝典22
java·开发语言·算法·面试·职场和发展
风象南1 小时前
Spring Boot 实现文件秒传功能
java·spring boot·后端
橘猫云计算机设计1 小时前
基于django优秀少儿图书推荐网(源码+lw+部署文档+讲解),源码可白嫖!
java·spring boot·后端·python·小程序·django·毕业设计
黑猫Teng2 小时前
Spring Boot拦截器(Interceptor)与过滤器(Filter)深度解析:区别、实现与实战指南
java·spring boot·后端
星河浪人2 小时前
Spring Boot启动流程及源码实现深度解析
java·spring boot·后端
佩奇的技术笔记2 小时前
中级:Maven面试题精讲
java·面试·maven
Lizhihao_2 小时前
JAVA-堆 和 堆排序
java·开发语言