考点介绍:
死锁就是所有两个或多个线程都在请求被对方占用的资源,而陷入的一种僵局。死锁的问题和其他的并发安全问题一样,是概率性的,也就是说,即使存在发生死锁的可能性,也并不是 100% 会发生的。
本期分享的前端专业课考点之死锁的特点,分为试题、文章以及视频三部分。
答案详情解析和文章内容点击下方链接即可查看!
一、考点题目
1、什么是死锁?
解答:所谓死锁,是指多个进程在运行过程中因争夺资源而造成的一种僵局,当进程处于这种僵持状态时,若无外力作用,它们都将无法再向前推进......
2、介绍典型的两种死锁情形
解答:一般情况下,如果同一个线程先后两次调用lock,在第二次调⽤用时,由于锁已经被占用,该线程会挂起等待占用锁的线程释放锁,然而锁正是被自己占用着的,该线程又被挂起而没有机会释放锁,因此 就永远处于挂起等待状态了,于是就形成了死锁(Deadlock).....
3、死锁的危害以及特点
解答:死锁的问题和其他的并发安全问题一样,是概率性的,也就是说,即使存在发生死锁的可能性,也并不是 100% 会发生的。如果每个锁的持有时间很短,那么发生冲突的概率就很低,所以死锁发生的概率也很低.....
4、产生死锁的四个必要条件
解答:互斥条件:一个资源每次只能被一个进程使用.....
(答案点击下方链接查看哦)
二、考点文章
1、死锁概述与总结
顾名思义,死锁死锁肯定与锁有关,我们知道引入锁又是为了解决多进程或多线程之间的同步与互斥问题,那么到底怎样的情形才会产生死锁呢……
2、【校招VIP】锁的特性和死锁
锁可以避免丢失更新。如果你回想我们之前在kalloc.c中的例子,丢失更新是指我们丢失了对于某个内存page在kfree函数中的更新。如果没有锁,在出现race condition的时候,内存page不会被加到freelist中。但是加上锁之后,我们就不会丢失这里的更新……
3、【校招VIP】锁的特性和死锁
锁可以避免丢失更新。如果你回想我们之前在kalloc.c中的例子,丢失更新是指我们丢失了对于某个内存page在kfree函数中的更新。如果没有锁,在出现race condition的时候,内存page不会被加到freelist中。但是加上锁之后,我们就不会丢失这里的更新……
(点击下方链接查看完整版)
三、考点视频
1、前端校招的特点、考点和职业发展
前端是IT校招中目前性价比最高的职位,对所学专业要求不高,考点难度较小,且需求量大。校招时分为一二线公司和普通公司,所对应的校招要求、工资和职业发展都是有差别的……
更多资讯可搜索校招VIP小程序查看哦!
移动端链接:https://m.xiaozhao.vip/dTopic/detail/473
PC端链接:校招VIP,专题 - 校招VIP