当前位置: 首页 > news >正文

java并发面试题

目录

一.线程基础

1.线程和进程的区别

2.并行和并发的区别

3.创建线程的方式

4.线程包括哪些状态,状态之间如何变化

5.如何保证线程间按顺序执行

6.notify()和notifyAll()的区别

7.java中wait和sleep方法的区别

8.如何停止正在运行的线程

二.线程安全

1.synchronized关键字的底层原理

2.锁升级

3.JMM(java内存模型)

4.CAS

5.volatile

6.AQS

7.ReentrantLock实现原理

8.synchronized和Lock区别

9.死锁产生的条件

10.ConcurrentHashMap

11.导致并发程序出现问题的根本原因

三.线程池

1.线程池核心参数

2.线程池执行原理

3.线程池中常见的阻塞队列

4.如何确定线程核心数量

5.线程池的种类

6.为什么不建议使用Executors创建线程池

四.多线程使用场景

1.项目中哪里用了多线程

2.如何控制某个方法允许并发访问线程的数量

五.ThreadLocal


一.线程基础

1.线程和进程的区别

2.并行和并发的区别

3.创建线程的方式

4.线程包括哪些状态,状态之间如何变化

5.如何保证线程间按顺序执行

6.notify()和notifyAll()的区别

7.java中wait和sleep方法的区别

8.如何停止正在运行的线程


二.线程安全

1.synchronized关键字的底层原理

2.锁升级

3.JMM(java内存模型)

4.CAS

5.volatile

6.AQS

7.ReentrantLock实现原理

8.synchronized和Lock区别

9.死锁产生的条件

10.ConcurrentHashMap

11.导致并发程序出现问题的根本原因


三.线程池

1.线程池核心参数

2.线程池执行原理

3.线程池中常见的阻塞队列

4.如何确定线程核心数量

5.线程池的种类

6.为什么不建议使用Executors创建线程池


四.多线程使用场景

1.项目中哪里用了多线程

2.如何控制某个方法允许并发访问线程的数量

五.ThreadLocal

相关文章:

  • openssl3.2/test/certs - 006 - trust variants: +anyEKU -anyEKU
  • C语言练习day8
  • 【Linux】:线程池(逐行解析代码)
  • 配置redis挂载
  • 使用docker以容器方式安装redis
  • 【论文+视频控制】23.08DragNUWA1.5:通过集成文本、图像和轨迹来进行视频生成中的细粒度控制 (24.01.08开源最新模型)
  • linux下vsc的自动切换输入法解决方案
  • 【数据库】第三章 MySQL库表操作
  • 【AI接口】语音版、文心一言大模型和AI绘图、图片检测API
  • php基础学习之变量
  • Python项目——计算器(PySide6+Pyinstaller)
  • 盖子的c++小课堂:第二十六讲:双向链表
  • JavaEE-微服务-Vuex
  • 浅谈拨测在网络安全中的应用
  • 最强生产力|卸载并重装Anaconda3
  • php的引用
  • 《Javascript数据结构和算法》笔记-「字典和散列表」
  • es6要点
  • HTTP 简介
  • interface和setter,getter
  • mysql_config not found
  • php ci框架整合银盛支付
  • Spring声明式事务管理之一:五大属性分析
  • supervisor 永不挂掉的进程 安装以及使用
  • 对JS继承的一点思考
  • 删除表内多余的重复数据
  • 小程序上传图片到七牛云(支持多张上传,预览,删除)
  • 找一份好的前端工作,起点很重要
  • Mac 上flink的安装与启动
  • 摩拜创始人胡玮炜也彻底离开了,共享单车行业还有未来吗? ...
  • 你学不懂C语言,是因为不懂编写C程序的7个步骤 ...
  • ​ 全球云科技基础设施:亚马逊云科技的海外服务器网络如何演进
  • ​iOS实时查看App运行日志
  • $forceUpdate()函数
  • (06)金属布线——为半导体注入生命的连接
  • (3)(3.2) MAVLink2数据包签名(安全)
  • (android 地图实战开发)3 在地图上显示当前位置和自定义银行位置
  • (C语言)fgets与fputs函数详解
  • (Matalb回归预测)PSO-BP粒子群算法优化BP神经网络的多维回归预测
  • (八)Flask之app.route装饰器函数的参数
  • (二)构建dubbo分布式平台-平台功能导图
  • (二)学习JVM —— 垃圾回收机制
  • (附源码)springboot电竞专题网站 毕业设计 641314
  • (一)u-boot-nand.bin的下载
  • (转)负载均衡,回话保持,cookie
  • (转)人的集合论——移山之道
  • (转载)虚函数剖析
  • .helper勒索病毒的最新威胁:如何恢复您的数据?
  • .net core开源商城系统源码,支持可视化布局小程序
  • .NET 使用配置文件
  • .NET/C# 利用 Walterlv.WeakEvents 高性能地中转一个自定义的弱事件(可让任意 CLR 事件成为弱事件)
  • .NET/C# 异常处理:写一个空的 try 块代码,而把重要代码写到 finally 中(Constrained Execution Regions)
  • .NET连接数据库方式
  • .NET使用HttpClient以multipart/form-data形式post上传文件及其相关参数
  • ??myeclipse+tomcat