Java多线程高并发基础面试题

本文探讨了Java中进程与线程的区别,强调线程作为CPU调度单位的特性,以及它们在进程内的关系。同时,文章指出多线程编程能有效利用CPU资源,提高性能,并提到了用户线程和守护线程的区别,以及线程的运行状态转换。最后,介绍了如何通过Thread.sleep()方法让线程暂停。
摘要由CSDN通过智能技术生成

1.进程和线程有什么不同? (个人理解, 不是标准答案)

           线程是CPU做任务调度的基本单元, 但是线程不能独立于进程运行,只能属于某个进程, 使用该进程的地址空间。

 一个进程至少拥有一个线程, 进程和线程之间是拥有和被拥有的关系。

参考:    https://javarevisited.blogspot.com/2015/12/difference-between-thread-and-process.html

 

2.多线程编程的好处。

          充分利用CPU, 相比于多进程, 多线程的的性能会更好, 因为同一个进程内做任务切换会更快。

 

3. 用户线程和守护线程有什么区别?

 

 目的创建地位
用户线程干自己的事情java创建线程的方法三种方法及对比最后一个用户线程退出, JVM退出
守护线程
(天使线程)
为其他线程服务public final void setDaemon(boolean on) 没地位

 

4. 线程状态

 

     Runable<-->Running<---->Dead

                   \              |

                        Blocking/Wait

 

5。 让线程暂停

          Thread.sleep()

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值