多线程面试问题汇总

本文汇总了Java多线程面试中常见的问题,包括线程的五种状态:New、Runnable、Running、Blocked和Dead,阐述了start()与run()的区别,分析了sleep()与wait()的不同,介绍了线程池的参数与工作原理,以及main线程的重要性。
摘要由CSDN通过智能技术生成

1 线程的几种状态

五种状态 创建状态(New) 就绪状态(Runabble)  运行状态(Running) 阻塞状态(Blocked) 死亡状态(Dead)

侵删 (网图)

1.1 New(新建)

解释 New 创建 new Thread() 这时候意味着创建一个线程 还未运行线程中的代码

1.2 Runnable (就绪)

Runnable (就绪) 调用start()方法使线程处于就绪状态 此时还未进入run方法体里面运行代码 获得cpu片才运行运行代码

1.3 Running(运行)

Running 当线程获得CPU片的时候才会运行方法体里面的代码 这是进入Running状态 

处于Running状态的线程 当cpu片用完的时候 但是这时候run方法的代码还未运行完 这时候就进入就绪状态

通常情况下 运行中的线程一直处于Runnable状态和Running状态交替

1.4 Blocked (阻塞)

在Running状态的线程 会被sleep()方法,wait()方法,join()方法 等使线程处于阻塞状态 阻塞过了 就会再次进入Runnable状态 等待再次获取CPU片

1.5 死亡(Dead)

当线程运行完run方法 进入死亡状态

2 Thread中run方法和start方法有什么区别

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
引用\[1\]和\[2\]提供了一些关于Java多线程的面试题。这些面试题可以帮助你在面试前复习并提高你的理论知识。其中,引用\[1\]展示了两种创建多线程的方式,一种是继承Thread类,另一种是实现Runnable接口。继承Thread类的方式比较简单,但是限制了类的继承关系,而实现Runnable接口的方式更加灵活。引用\[3\]展示了使用Callable和FutureTask的方式创建多线程,并获取线程执行结果的示例。这种方式可以在多线程执行完毕后获取线程的返回结果。希望这些面试题能够帮助你在面试中展示你的多线程知识和实战能力。 #### 引用[.reference_title] - *1* *3* [java2023多线面试题](https://blog.csdn.net/weixin_68009402/article/details/130399986)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [Java面试题及答案整理汇总(2023最新版)](https://blog.csdn.net/Design407/article/details/129009269)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值