【校招VIP】专业课考点之死锁检测与恢复

04月14日 收藏 0 评论 1 测试开发

【校招VIP】专业课考点之死锁检测与恢复

考点介绍:

根据不少同学的面试反馈,最近阿里和字节跳动面试时面试官都问到了死锁问题。如字节跳动考察的问题是:什么是线程死锁?死锁如何产生?死锁如何检测与恢复?其产生的原理与对应的解决方案都是重点考察对象。。

本期分享的专业课考点之死锁检测与恢复,分为试题、文章以及视频三部分。

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

一、考点题目

1.死锁如何检测与解除?

正确答案:
死锁检测
需要一一种数据结构, 保存有关资源的请求和分配信总
提供种算法,利用这些信息检测是否形成 了死锁

2. 死锁检测实现的原理?

正确答案:检测的原理采用另一个线程定时对图进程检测是否有环的存在。

3.  如何查看线程死锁?(阿里一面)

正确答案: 
1.可以通过jstack命令来进行查看, jstack命令中会显示发生了死锁的线程
2.或者两个线程去操作数据库时,数据库发生了死锁,这是可以查询数据库的死锁情况

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

二、考点文章

1. MySQL 8.0 新特性之死锁检测控制

在 MySQL 中,如果两个不同的事务在执行时,互相持有了对方所需的锁,此时由于它们都在等待某个资源,永远不会释放自己获得的锁,因此就会产生死锁(deadlock)。

2.死锁 死锁的4个条件 避免死锁 银行家算法 安全性检测

各进程互相等待对方手里的资源,导致各进程都阻塞,无法向前推进的现象。

用我的话来说就是:1线程拥有A资源,需要B资源继续运行程序。而2线程拥有B资源,需要A资源继续运行程序,这样双方都得不到自己想要的资源,然后两个线程就这样一直僵持在这里,导致死锁。其实感觉写java的并发写多一些,这些什么死锁之类的都很容易理解。我这段话主要是从线程的角度看。

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

三、考点视频

TCP建立和结束连接的过程

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

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



C 1条回复 评论
C李要控制李寄几

小白过来学习

发表于 2024-04-08 21:00:00
0 0