据说是写了 DoEvents 如果此时又收到数据,那么它会被DoEvents调用。 导致无限递归。在使用 Winsock 控件时,DoEvents的使用确实容易引发堆栈溢出问题。这是因为DoEvents会暂停当前代码执行,处理所有待处理的 Windows 消息(包括新的网络事件),如果此时网络请求频繁,会导致代码不断被中断并重新进入,形成类似递归的调用链,最终耗尽堆栈空间。