Web Analytics
yangyang

码农兼一个普普通通小青年

dumpheap


使用WinDbg查看所有的C#线程及其名称

最近程序遇到了一个问题,当写的一个C#客户端程序在Windows 11系统休眠之后再次唤醒,有一定的概率不能够正常的接受服务端的数据。这个程序有一个专门用于连接服务端的C# 线程,名字为"WatchServiceTransport",它的内部是一个while循环,不停的从服务端使用Socket的NetworkStream.Read读取数据。在正常的时候,程序是能够接收数据的。但是当Windows休眠之后,此时网络连接可能断开,此时即使Windows唤醒之后仍然不能连接收取数据。于是怀疑是否是因为Windows 11休眠后,连接TCP的线程被强制退出了。那如何验证是否是这个原因导致的呢?就需要判断在出现问题时,当前的名为“WatchServiceTransport”的线程还是否存在。 幸好,今天这个问题又复现了于是导出了DUMP文件,用Windbg分析了一下,顺便记录如何打印所有的C#线程 …

WinDbg dumpheap

  • 1