【校招VIP】操作系统考点之多线程

考点介绍:

多线程可以说是 Java 进阶必备的知识点了,也是面试中必备的考点。可能不少人能对多线程说上一二,但这还远远不够,如果碰到比较有经验的面试官再继续追问,很可能会被吊打。

本期分享的操作系统考点之多线程,分为试题、文章以及视频三部分。

答案详情解析和文章内容可扫下方二维码或链接即可查看!

一、考点题目

1. 既然 start() 方法会调用 run() 方法,为什么我们调用 start() 方法,而不直接调用 run() 方法?

正确答案:当你调用 start() 方法时,它会新建一个线程然后执行 run() 方法中的代码。如果直接调用 run() 方法,并不会创建新线程,方法中的代码会在当前调用者的线程中执行。

2. 守护线程和非守护线程有怎么区别?

正确答案:程序运行完毕,jvm会等待非守护线程完成后关闭,但是jvm不会等待守护线程。守护线程最典型的例子就是GC线程。

3. 多线程上下文切换是什么?

正确答案:多线程上下文切换就是指CPU控制权由一个已经正在运行的线程切换到另外一个就绪并等待获取CPU执行权的线程的过程。

4、有哪两种创建线程的方式?这两种方式更优的是哪个?

正确答案:两种方式:通过实现java.lang.Runnable或者通过扩展java.lang.Thread类。

5.一个线程如果出现了运行时异常怎么办?

正确答案:如果该异常没有被捕获的话,这个线程就停止执行了。但是要注意:如果这个线程持有某个对象的监视器,则这个对象监视器会被立即释放。

(答案点击下方链接或者扫海报二维码查看哦)

二、考点文章

1.  线程同步相关术语总结

对于初次接触线程同步的前端来说,总是对互斥锁、条件变量、信号量等术语傻傻分不清楚,这里根据自己的理解简单做下总结,如有疏漏之处,欢迎大家批评指正。

2.  Python多线程的原理与实现

asyncio提供了完善的异步IO支持;
异步操作需要在coroutine中通过yield from完成;
多个coroutine可以封装成一组Task然后并发执行。

(扫下方海报二维码查看完整版)

三、考点视频

进程和线程的关系?

更多资讯可搜索校招VIP小程序查看哦。

PC端链接:https://xiaozhao.vip/dTopic/detail/236
移动端链接:https://m.xiaozhao.vip/dTopic/detail/236

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值