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

发布时间 2023-08-25 10:30:18作者: 校招VIP

考点介绍:

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

一、考点试题

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

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

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

解答:资源获取环可以采用图来存储, 使用有向图来存储。 线程 A 获取线程 B 已占用的锁,则为线程 A 指向线程 B。 如何为线程 B 已占用的锁?运行过程线程 B 获取成功的锁......

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

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

二、考点文章

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

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

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

各进程互相等待对方手里的资源,导致各进程都阻塞,无法向前推进的现象。用我的话来说就是:1线程拥有A资源,需要B资源继续运行程序。而2线程拥有B资源,需要A资源继续运行程序,这样双方都得不到自己想要的资源,然后两个线程就这样......

三、考点视频

TCP建立和结束连接的过程

本题是开发类一线校招专业课必考题之一,需要在理解TCP协议的基础上,记忆过程中的状态码、字段和标志位,最好是能够在理解的前提下,背下状态图......

移动端:https://m.xiaozhao.vip/dTopic/detail/1123

PC端:https://xiaozhao.vip/dTopic/detail/1123