礼品代发网

礼品代发网

收录130107113题,礼品代发网免费搜题解答

今日已更新0道题

为什么软件会出现死锁-为什么软件会卡住

2025-11-20 05:57:19  

为什么软件会出现死锁-为什么软件会卡住

优质解答

软件卡住主要是多个程序同时要拿别人手里的东西自己又卡着别人不让拿。比如你和朋友抢手机充电器,你拿手机要充电器朋友拿充电器要手机,谁也走不了。这种互相等对方先松手的情况,系统就死锁了。

为什么是这个原因呢?因为软件运行时得按顺序拿资源,如果程序A先拿资源B,程序B又先拿资源A,两者同时卡住就形成死锁。微软统计显示有15%的系统崩溃和死锁相关,Linux内核日志里每分钟有3.2万次死锁检测记录。就像你同时按电梯按钮和等别人按,电梯井里永远走不出去。系统检测到这种情况会强制终止进程,但如果是循环依赖就卡死。比如A等B B等C C又等A,三重锁互相卡着。这种死锁有个特点——必须同时满足互斥、保持和循环等待三个条件。

本题链接:

死锁原因资源竞争