h*****f 发帖数: 248 | 1 Q: how do you know a deadlock happen?
一开始号我在想是看到100%的CPU usage,后来想一下,好像也不一定。因为
underneath的implementation可能是mutex而不是spin lock。那考官问,那为什么会有
100%的CPU使用率?当时没想到,后来想一下,不知道那100%的CPU使用率是来自应用
程序本身? |
c****p 发帖数: 6474 | 2 deadlock发生的时候CPU占用率也有可能为0吧
【在 h*****f 的大作中提到】![](/moin_static193/solenoid/img/up.png) : Q: how do you know a deadlock happen? : 一开始号我在想是看到100%的CPU usage,后来想一下,好像也不一定。因为 : underneath的implementation可能是mutex而不是spin lock。那考官问,那为什么会有 : 100%的CPU使用率?当时没想到,后来想一下,不知道那100%的CPU使用率是来自应用 : 程序本身?
|
p*****2 发帖数: 21240 | 3 deadlock的主要表现是程序freeze吧? |
t******e 发帖数: 98 | 4 事后分析的话可以看JVM的dump文件,一般有cyclic resource dependency就说明有
deadlock。Debug SQL Server deadlock就常常看lock manager log file. |
g*****g 发帖数: 34805 | 5 Nah, take a thread dump and lots of tools can find the deadlock for you.
You call run kill -3 on Linux to do that.
For large scale application, you want to also use JMX to monitor your job
thread pool, a critical deadlock will get your jobs piled up.
【在 h*****f 的大作中提到】![](/moin_static193/solenoid/img/up.png) : Q: how do you know a deadlock happen? : 一开始号我在想是看到100%的CPU usage,后来想一下,好像也不一定。因为 : underneath的implementation可能是mutex而不是spin lock。那考官问,那为什么会有 : 100%的CPU使用率?当时没想到,后来想一下,不知道那100%的CPU使用率是来自应用 : 程序本身?
|
h*****f 发帖数: 248 | 6 对, 所以考官问为什么有时候是100% CPU usage
【在 c****p 的大作中提到】![](/moin_static193/solenoid/img/up.png) : deadlock发生的时候CPU占用率也有可能为0吧
|
s********e 发帖数: 340 | 7 死锁是两个线程都互相等待,所以100%肯定不对吧,为0到有可能。 |
w**z 发帖数: 8232 | 8 it can be busy waiting.
【在 s********e 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 死锁是两个线程都互相等待,所以100%肯定不对吧,为0到有可能。
|