wince可以比较方便的查看线程相关的信息,如CeShell或者KernelTracker,可以通过系统接口得到线程占用CPU时间,堆栈等等.
然而知道了出问题的线程,却没有标准的接口得到线程所在模块.
附件是列出当前所有线程的小工具,大部分代码来自CeShell,以及private下的handle.c(将线程Handle转换为PTHREAD,以得到入口地址)
附件是列出当前所有线程的小工具,大部分代码来自CeShell,以及private下的handle.c(将线程Handle转换为PTHREAD,以得到入口地址)
该工具(点击下载)只能在wince6上运行,结果输出到调试串口,结果如下:
[@more@]
========== showth ========== PROC: Name hProcess: CurAKY :dwVMBase:CurZone THRD: State :hCurThrd:hCurProc: CurAKY :Cp :Bp :Kernel Time User Time Address P00: NK.EXE 00400002 00000000 80070000 00000000 T Blockd 0440000a 00400002 00000000 251 251 0.232 0.000 c07ebef0 redir.dll(0000bef0) T Blockd 0428000a 00400002 00000000 251 251 0.001 0.000 c05696e4 afd.dll(000196e4) T Blockd 05900006 00400002 00000000 130 130 0.103 0.000 c0461e98 asyncmac.dll(00001e98) T Blockd 058e0006 00400002 00000000 130 130 0.227 0.000 c046321c asyncmac.dll(0000321c) T Blockd 05830006 00400002 00000000 150 150 0.030 0.000 c07c5eb4 unimodem.dll(00005eb4) T Blockd 04c40006 00400002 00000000 251 251 0.001 0.000 c05d1440 ndispwr.dll(00001440) T Blockd 04b60006 00400002 00000000 249 249 0.002 0.000 c008d844 k.coredll.dll(0006d844) ... P13: showth.exe 04320012 00000000 00010000 00000000 T Runing 04560012 00400002 00000000 251 251 0.000 1.971 000114f8
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/116625/viewspace-1035098/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/116625/viewspace-1035098/