- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 WinDbg 和 SOS 来调试挂起的 .NET 应用程序(应用程序关闭后保留在 TaskManager 中)。当我执行 !threads 命令时,我得到以下输出。它仅显示一个线程的锁定计数 = 1。
0:002> !threads
ThreadCount: 132
UnstartedThread: 2
BackgroundThread: 54
PendingThread: 0
DeadThread: 48
Hosted Runtime: no
Lock
ID OSID ThreadOBJ State GC Mode GC Alloc Context Domain Count Apt Exception
0 1 13010 000002716ae37680 2036220 Preemptive 00000271060C1958:00000271060C36E8 000002716ae2afd0 0 STA
2 2 106e4 000002716ae63220 2b220 Preemptive 0000027105FB9778:0000027105FBB6E8 000002716ae2afd0 0 MTA (Finalizer)
XXXX 3 0 000002716d1b8360 8039820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn (Threadpool Completion Port)
XXXX 4 0 000002716d1ca8b0 1039820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn (Threadpool Worker)
7 5 14570 000002716d23e290 3029220 Preemptive 0000027105FF1D08:0000027105FF36E8 000002716ae2afd0 0 MTA (Threadpool Worker)
10 7 14c54 000002716d85ddc0 102a220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA (Threadpool Worker)
12 8 12758 000002716d8b56a0 202b220 Preemptive 00000271060457C8:00000271060476E8 000002716ae2afd0 1 MTA
XXXX 9 0 000002716d8795d0 8039820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn (Threadpool Completion Port)
13 10 12ef8 000002716d8b95d0 1020220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn (Threadpool Worker)
15 11 11e04 000002716d8d21c0 202b220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
16 12 14b30 000002716d8dbd50 202b220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
17 14 14760 000002716d819c30 202b220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
XXXX 15 0 000002716d21c7a0 1039820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn (Threadpool Worker)
18 16 143e8 0000027170b91780 202b220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
19 17 13b9c 0000027170ba5800 202b220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
20 18 11278 0000027170bb8600 202b220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
21 19 14608 000002716d805310 202b220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
22 20 131f8 000002716d8e0830 202b220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
23 21 14a54 000002716d8e1000 202b220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
24 22 13d78 000002716d8e1fa0 202b220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
25 23 10da8 000002716d8de8f0 202b220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
26 24 137c4 0000027170b99a90 202b220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
27 25 12580 0000027170b9a260 202b220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
28 26 14388 0000027170b9aa30 202b220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
29 27 12390 0000027170b95440 202b220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
30 28 f5b4 0000027170b9b200 202b220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
31 29 fde8 0000027170b963e0 202b220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
32 30 13114 0000027170b97380 202b220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
33 31 14068 0000027170b98320 202b220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
34 32 14a38 0000027170ba7790 202b220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
35 33 1391c 0000027170ba67f0 202b220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
36 34 13a64 0000027170ba6fc0 202b220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
37 35 f764 0000027170bac5b0 202b220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
38 36 f818 0000027170baae40 1029220 Preemptive 0000027106299D48:000002710629B6E8 000002716ae2afd0 0 MTA (Threadpool Worker)
39 37 14738 0000027170bacd80 1029220 Preemptive 0000027106275548:00000271062756E8 000002716ae2afd0 0 MTA (Threadpool Worker)
XXXX 38 0 0000027170ba7f60 1039820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn (Threadpool Worker)
40 39 1232c 0000027170ba6020 3029220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA (Threadpool Worker)
XXXX 40 0 0000027170db57e0 1039820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn (Threadpool Worker)
XXXX 41 0 0000027170db5010 1039820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn (Threadpool Worker)
XXXX 42 0 0000027170db7720 1039820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn (Threadpool Worker)
42 43 14d6c 0000027170db4840 202b220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
43 44 13d70 0000027170db1960 202b220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
XXXX 45 0 0000027170db2130 39820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn
XXXX 46 0 0000027170db4070 39820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn
XXXX 47 0 00000271731b4650 39820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn
44 48 60ec 00000271731b0fa0 2b020 Preemptive 000002710617F738:00000271061816E8 000002716ae2afd0 0 MTA
45 49 132d8 00000271731b36b0 202b020 Preemptive 000002710617D738:000002710617F6E8 000002716ae2afd0 0 MTA
46 50 134cc 00000271731b1770 202b020 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
47 51 14028 00000271731b2ee0 202b020 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
XXXX 52 0 00000271731b3e80 39820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn
XXXX 53 0 00000271731b1f40 39820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn
48 54 14bf0 00000271731b07d0 202b220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
49 55 1147c 00000271731c8800 202b220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
50 56 1467c 00000271731c8030 2b020 Preemptive 0000027106185738:00000271061876E8 000002716ae2afd0 0 MTA
51 57 14148 00000271731cbeb0 202b020 Preemptive 0000027106183738:00000271061856E8 000002716ae2afd0 0 MTA
52 58 14574 00000271731cc680 202b020 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
53 59 12444 00000271731c5920 202b020 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
XXXX 60 0 00000271731c7090 39820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn
XXXX 61 0 00000271731c8fd0 9600 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn
XXXX 62 0 00000271731c7860 9600 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn
54 63 14904 00000271731c97a0 202b220 Preemptive 0000027106359808:000002710635B6E8 000002716ae2afd0 0 MTA
55 64 12920 00000271731f67c0 2b020 Preemptive 000002710634F700:00000271063516E8 000002716ae2afd0 0 MTA
56 65 14e54 00000271731f5050 202b020 Preemptive 0000027106189738:000002710618B6E8 000002716ae2afd0 0 MTA
57 66 14e34 00000271731fb5e0 202b020 Preemptive 0000027106354F28:00000271063556E8 000002716ae2afd0 0 MTA
58 67 11d88 00000271731fa640 202b020 Preemptive 00000271060797D8:000002710607B6E8 000002716ae2afd0 0 MTA
XXXX 68 0 00000271731fae10 39820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn
60 69 12d2c 00000271731fbdb0 202b220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
XXXX 70 0 00000271731f9e70 39820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn
59 71 12e5c 00000271731f8ed0 2b020 Preemptive 0000027106193738:00000271061956E8 000002716ae2afd0 0 MTA
61 72 14a94 000002717320c730 202b020 Preemptive 0000027106191738:00000271061936E8 000002716ae2afd0 0 MTA
62 73 fd58 0000027173213f70 202b020 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
63 74 13858 0000027173212030 202b020 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
64 75 ef34 00000271732185c0 202b220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
XXXX 76 0 00000271732156e0 39820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn
65 77 fd9c 0000027173216680 202b220 Preemptive 0000027106094C80:00000271060956E8 000002716ae2afd0 0 MTA
66 78 129a4 0000027173217620 202b220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
XXXX 79 0 0000027173211090 39820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn
67 80 13120 0000027173209080 202b220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
68 81 147ec 000002717320fde0 202b220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
XXXX 82 0 000002717320a7f0 39820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn
69 83 12720 000002717320bf60 2b020 Preemptive 000002710619D738:000002710619F6E8 000002716ae2afd0 0 MTA
70 84 f42c 000002717320cf00 2b020 Preemptive 0000027106199738:000002710619B6E8 000002716ae2afd0 0 MTA
71 85 148a0 000002717320ee40 2b020 Preemptive 00000271061A1738:00000271061A36E8 000002716ae2afd0 0 MTA
72 86 14f50 000002717320dea0 202b020 Preemptive 0000027106197738:00000271061996E8 000002716ae2afd0 0 MTA
73 87 14690 000002717320e670 202b020 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
74 88 13dd0 0000027173256850 202b020 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
75 89 13adc 0000027173257020 202b020 Preemptive 000002710619B738:000002710619D6E8 000002716ae2afd0 0 MTA
76 90 13668 0000027173254910 202b020 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
77 91 14d78 0000027173258f60 202b020 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
78 92 12f54 00000271732558b0 202b020 Preemptive 000002710619F738:00000271061A16E8 000002716ae2afd0 0 MTA
79 93 13e38 0000027173252200 202b020 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
80 94 14938 0000027173251a30 202b020 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 MTA
XXXX 95 0 000002717325a6d0 1039820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn (Threadpool Worker)
81 96 14064 000002717325aea0 27220 Preemptive 0000027106361B90:00000271063636E8 000002716ae2afd0 0 STA
82 97 11fb8 000002717325c610 27220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 STA
XXXX 98 0 000002717325d5b0 39820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn
83 99 13580 000002717325e550 8029220 Preemptive 00000271062F4B28:00000271062F56E8 000002716ae2afd0 0 MTA (Threadpool Completion Port)
XXXX 100 0 0000027173258790 8039820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn (Threadpool Completion Port)
8 101 7e2c 000002717325fcc0 20220 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn
XXXX 102 0 000002717325dd80 39820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn
XXXX 103 0 0000027173260490 39820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn
XXXX 104 0 000002716aea61b0 39820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn
XXXX 105 0 000002717343f830 39820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn
XXXX 106 0 0000027173440000 39820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn
84 107 13848 0000027173444650 1029220 Preemptive 00000271062F2720:00000271062F36E8 000002716ae2afd0 0 MTA (Threadpool Worker)
XXXX 108 0 0000027173440fa0 1039820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn (Threadpool Worker)
XXXX 109 0 0000027173441f40 1039820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn (Threadpool Worker)
XXXX 110 0 0000027173442710 1039820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn (Threadpool Worker)
XXXX 111 0 0000027173444e20 1039820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn (Threadpool Worker)
XXXX 112 0 00000271734484d0 1039820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn (Threadpool Worker)
XXXX 113 0 0000027173448ca0 1039820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn (Threadpool Worker)
XXXX 114 0 0000027173446d60 1039820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn (Threadpool Worker)
XXXX 115 0 0000027173447530 1039820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn (Threadpool Worker)
85 116 13ec8 0000027173449470 1029220 Preemptive 000002710624CFB8:000002710624D6E8 000002716ae2afd0 0 MTA (Threadpool Worker)
XXXX 117 0 00000271734436b0 1039820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn (Threadpool Worker)
XXXX 118 0 0000027173447d00 1039820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn (Threadpool Worker)
XXXX 119 0 000002717344dac0 1039820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn (Threadpool Worker)
86 120 137a8 000002717344c350 1029220 Preemptive 0000027106258D60:00000271062596E8 000002716ae2afd0 0 MTA (Threadpool Worker)
XXXX 121 0 000002717344d2f0 1039820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn (Threadpool Worker)
XXXX 122 0 0000027173326f50 1039820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn (Threadpool Worker)
XXXX 123 0 0000027173327ef0 1039820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn (Threadpool Worker)
87 124 1443c 00000271733286c0 1029220 Preemptive 000002710631AEF8:000002710631B6E8 000002716ae2afd0 0 MTA (Threadpool Worker)
88 125 13b98 0000027173329660 1029220 Preemptive 0000027106256958:00000271062576E8 000002716ae2afd0 0 MTA (Threadpool Worker)
XXXX 13 0 000002717332bd70 39820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn
XXXX 126 0 000002717332d4e0 39820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn
XXXX 127 0 00000271733332a0 39820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn
XXXX 128 0 0000027173331b30 39820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn
XXXX 129 0 0000027173332300 39820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn
XXXX 6 0 000002717332f420 8039820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn (Threadpool Completion Port)
XXXX 131 0 000002717332e480 8039820 Preemptive 0000000000000000:0000000000000000 000002716ae2afd0 0 Ukn (Threadpool Completion Port)
89 130 1404c 0000027173332ad0 8029220 Preemptive 0000027106334438:00000271063356E8 000002716ae2afd0 0 MTA (Threadpool Completion Port)
90 132 14cbc 000002717332dcb0 8029220 Preemptive 000002710635C790:000002710635D6E8 000002716ae2afd0 0 MTA (Threadpool Completion Port)
当我执行 !syncblk 时,我得到以下输出,我相信它告诉我没有线程拥有任何监视器:
0:002> !syncblk
Index SyncBlock MonitorHeld Recursion Owning Thread Info SyncBlock Owner
-----------------------------
Total 351
CCW 49
RCW 15
ComClassFactory 0
Free 35
当我切换到显示锁的线程时,我看到以下内容:
0:002> ~12s
ntdll!NtWaitForMultipleObjects+0x14:
00007ffe`7b5b6c24 c3 ret
当我执行 !runaway 时,我有这个:
0:000> !runaway
User Mode Time
Thread Time
0:13010 0 days 0:00:16.203
6:e444 0 days 0:00:01.687
81:14064 0 days 0:00:00.281
40:1232c 0 days 0:00:00.234
16:14b30 0 days 0:00:00.125
32:13114 0 days 0:00:00.078
65:fd9c 0 days 0:00:00.062
39:14738 0 days 0:00:00.062
67:13120 0 days 0:00:00.046
38:f818 0 days 0:00:00.046
54:14904 0 days 0:00:00.031
7:14570 0 days 0:00:00.031
87:1443c 0 days 0:00:00.015
58:11d88 0 days 0:00:00.015
48:14bf0 0 days 0:00:00.015
44:60ec 0 days 0:00:00.015
42:14d6c 0 days 0:00:00.015
27:12580 0 days 0:00:00.015
15:11e04 0 days 0:00:00.015
2:106e4 0 days 0:00:00.015
91:149e8 0 days 0:00:00.000
90:14cbc 0 days 0:00:00.000
89:1404c 0 days 0:00:00.000
88:13b98 0 days 0:00:00.000
86:137a8 0 days 0:00:00.000
85:13ec8 0 days 0:00:00.000
84:13848 0 days 0:00:00.000
83:13580 0 days 0:00:00.000
82:11fb8 0 days 0:00:00.000
80:14938 0 days 0:00:00.000
79:13e38 0 days 0:00:00.000
78:12f54 0 days 0:00:00.000
77:14d78 0 days 0:00:00.000
76:13668 0 days 0:00:00.000
75:13adc 0 days 0:00:00.000
74:13dd0 0 days 0:00:00.000
73:14690 0 days 0:00:00.000
72:14f50 0 days 0:00:00.000
71:148a0 0 days 0:00:00.000
70:f42c 0 days 0:00:00.000
69:12720 0 days 0:00:00.000
68:147ec 0 days 0:00:00.000
66:129a4 0 days 0:00:00.000
64:ef34 0 days 0:00:00.000
63:13858 0 days 0:00:00.000
62:fd58 0 days 0:00:00.000
61:14a94 0 days 0:00:00.000
60:12d2c 0 days 0:00:00.000
59:12e5c 0 days 0:00:00.000
57:14e34 0 days 0:00:00.000
56:14e54 0 days 0:00:00.000
55:12920 0 days 0:00:00.000
53:12444 0 days 0:00:00.000
52:14574 0 days 0:00:00.000
51:14148 0 days 0:00:00.000
50:1467c 0 days 0:00:00.000
49:1147c 0 days 0:00:00.000
47:14028 0 days 0:00:00.000
46:134cc 0 days 0:00:00.000
45:132d8 0 days 0:00:00.000
43:13d70 0 days 0:00:00.000
41:14504 0 days 0:00:00.000
37:f764 0 days 0:00:00.000
36:13a64 0 days 0:00:00.000
35:1391c 0 days 0:00:00.000
34:14a38 0 days 0:00:00.000
33:14068 0 days 0:00:00.000
31:fde8 0 days 0:00:00.000
30:f5b4 0 days 0:00:00.000
29:12390 0 days 0:00:00.000
28:14388 0 days 0:00:00.000
26:137c4 0 days 0:00:00.000
25:10da8 0 days 0:00:00.000
24:13d78 0 days 0:00:00.000
23:14a54 0 days 0:00:00.000
22:131f8 0 days 0:00:00.000
21:14608 0 days 0:00:00.000
20:11278 0 days 0:00:00.000
19:13b9c 0 days 0:00:00.000
18:143e8 0 days 0:00:00.000
17:14760 0 days 0:00:00.000
14:13e34 0 days 0:00:00.000
13:12ef8 0 days 0:00:00.000
12:12758 0 days 0:00:00.000
11:13e40 0 days 0:00:00.000
10:14c54 0 days 0:00:00.000
9:13e98 0 days 0:00:00.000
8:7e2c 0 days 0:00:00.000
5:14b18 0 days 0:00:00.000
4:14a48 0 days 0:00:00.000
3:12da4 0 days 0:00:00.000
1:14fd8 0 days 0:00:00.000
我不是 WinDbg 或 SOS 方面的专家,但有人可以帮我解释一下吗?我认为问题不是死锁,而可能是线程失控。我该如何继续。我被困在这一点上。
谢谢!
最佳答案
该列表中有很多前台线程,并且任何仍在运行的前台线程都会阻止 CLR 关闭,即使应用程序没有任何可见窗口(根据 Microsoft 的 docs) .
可以通过 !ThreadState
命令来判断哪些不是后台,例如:
0:000> !threadstate 2b020
Legal to Join
CLR Owns
CoInitialized
In Multi Threaded Apartment
Fully initialized
使用 !threads
输出的 State
列中的值作为参数。
返回列表,所有状态为 2b020 或 202b020 的线程都是前台。检查它们的堆栈,将它们与您在代码中创建它们的位置联系起来。
创建它们时,通过将 IsBackground
属性设置为 true
将它们设置为背景。更好的是,不要创建它们。这是一个很好的替代方案列表:Background Thread? Let me count the ways....
关于c# - 使用 WinDbg 和 SOS 调试挂起的 .net 应用程序、死锁或失控线程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55210793/
一、公平锁和非公平锁 1.1、公平锁和非公平锁的概述 公平锁:指多个线程按照申请锁的顺序来获取锁。 非公平锁:指在多线程获取锁的顺序并不是按照申请锁的顺序,有可能后申请的线程比先申请的线程优先获取到锁
阅读目录 1、简介 2、分类 3、全局锁 4、表级锁 5、表锁 6、元数据锁
因此,在我编写的程序中,我有三个函数,为了简单起见,我们将它们称为 A、B 和 C。每个函数都需要访问资源X才能工作。 限制是A和B不允许同时运行并且必须适当同步。但是,C 可以与 A 或 B 同时运
我听说过这些与并发编程相关的词,但是锁、互斥量和信号量之间有什么区别? 最佳答案 锁只允许一个线程进入被锁定的部分,并且该锁不与任何其他进程共享。 互斥锁与锁相同,但它可以是系统范围的(由多个进程共享
这个问题已经有答案了: What is an efficient way to implement a singleton pattern in Java? [closed] (29 个回答) 已关闭
这个问题已经有答案了: What is an efficient way to implement a singleton pattern in Java? [closed] (29 个回答) 已关闭
我对标题中的主题有几个问题。首先,假设我们使用 JDBC,并且有 2 个事务 T1 和 T2。在 T1 中,我们在一个特定的行上执行 select 语句。然后我们对该行执行更新。在事务 T2 中,我们
我希望我的函数只运行一次。这意味着如果多个线程同时调用它,该函数将阻塞所有线程,只允许它运行。 最佳答案 听起来您希望存储过程进行同步。为什么不直接将同步放在应用程序本身中。 pthread_mute
if (runInDemoMode) { lock (this) { //Initalization of tables dCreator.create
我相信无论使用什么语言都可以考虑我的问题,但是为了有一些“ anchor ”,我将使用 Java 语言来描述它。 让我们考虑以下场景:我有一个扩展 Thread 的类 PickyHost 及其实例 p
我知道异步不是并行的,但我现在遇到了一个非常有趣的情况。 async function magic(){ /* some processing here */ await async () =
我们正在使用 Scala、Play 框架和 MongoDB(以 ReactiveMongo 作为我们的驱动程序)构建一个网络应用程序。应用程序架构是端到端的非阻塞。 在我们代码的某些部分,我们需要访问
我需要一个简单的锁,JavaME 超时(concurrent.lock 的反向移植需要完整的 Java 1.3)。 如果其他人已经为 JavaME 发布了经过测试的锁定代码,我宁愿使用它。 锁定是出了
根据 boost : To access the object, a weak_ptr can be converted to a shared_ptr using the shared_ptr co
关于 Mutex 和 Critical 部分之间的区别存在一个问题,但它也不处理 Locks。 所以我想知道临界区是否可以用于进程之间的线程同步。 还有信号状态和非信号状态的含义 最佳答案 在 Win
锁 最为常见的应用就是 高并发的情况下,库存的控制。本次只做简单的单机锁介绍。 直接看代码: 每请求一次库存-1. 假如库存1000,在1000个人请求之后,库存将变为0。
线程和进程 1、线程共享创建它的进程的地址空间,进程有自己的地址空间 2、线程可以访问进程所有的数据,线程可以相互访问 3、线程之间的数据是独立的 4、子进程复制线程的数据 5、子进程启动
**摘要:**细心的你也一定关注到,有的网址是https开头的,有的是http。https开头的网站前面,会有一把小锁。这是为什么呢? 本文分享自华为云社区《还不知道SSL证书已经是刚需了?赶快来了解
试图在 C 中实现一个非常简单的互斥锁(锁)我有点困惑。我知道互斥锁类似于二进制信号量,除了互斥锁还强制执行释放锁的线程的约束,必须是最近获得它的同一线程。我对如何跟踪所有权感到困惑? 这是我到目前为
在阅读了很多与上述主题相关的文章和答案之后,我仍然想知道 SQL Server 数据库引擎在以下示例中是如何工作的: 假设我们有一个名为 t3 的表: create table t3 (a int ,
我是一名优秀的程序员,十分优秀!