0

我有一个函数,我在其中放置断点,并且可以看到它位于 UI 线程以外的不同线程中,我的意思是它是工作线程。我为此检查了线程窗口,当我检查创建和启动线程的位置时,我找不到。即使我也检查了调用堆栈。当我钻孔时,我只能看到那些开始的东西

System.dll!System.Net.LazyAsyncResult.Complete(System.IntPtr userToken) + 0x6c bytes

并以

mscorlib.dll!System.Threading._IOCompletionCallback.PerformIOCompletionCallback(uint errorCode, uint numBytes, System.Threading.NativeOverlapped* pOVERLAP) + 0x74 bytes

我们有什么机制可以找到线程的起点吗?我的目的是改变工作线程的线程的aprtmentmodel

4

1 回答 1

6

由于您正在执行一些套接字操作并且线程显然以 IO 完成回调开始,我的精神力量告诉我这是一个 IO 完成线程。它通知您,您在该套接字上启动的异步 IO 操作已由网卡完成。

我的目标是改变工作线程的线程的aprtmentmodel

你没有启动那个线程;网络套接字层可能做到了。如果我是你,我不会试图改变这一点。

于 2013-03-20T14:59:27.497 回答