First-chance exception :0xC0000008:Invalid Handle
First-chance exception in TCPServer.exe (NTDLL.DLL):0xC0000008:Invalid Handle。
进入到Clist.RemoveHead()内部,发现,RemoveHead()语句都可以执行,最后return 的时候出现上述错误,并且returnvalue的值也是正确的。代码如下:
CList<CTCPCustom_CE,CTCPCustom_CE&> m_ListClientSocket;
有连接请求:
if (FD_ISSET(pSocket->m_ServerSocket,&fdRead))
{
//如果调用了Listen,则表示触发了OnAccept事件
SOCKADDR_IN clientAddr;
CTCPCustom_CE * pClientSocket = new CTCPCustom_CE();
int namelen = sizeof(clientAddr);
//等待,创建与客户端连接的套接字
pClientSocket->m_socket = accept(pSocket->m_ServerSocket, (struct sockaddr *)&clientAddr, &namelen);
//接收到客户端连接
if (pClientSocket->m_socket)
{
pClientSocket->m_RemoteHost = inet_ntoa(clientAddr.sin_addr);
pClientSocket->m_RemotePort = ntohs(clientAddr.sin_port);
//触发与客户端建立连接事件
pSocket->OnClientConnect(pSocket->m_pOwnerWnd,pClientSocket);
//打开pClientSocket服务线程
pClientSocket->Open(pSocket);
//添加到客户端连接队列中
m_ListClientSocket.AddTail(*pClientSocket);
/*pClientSocketTemp=pClientSocket;*/
}
else
{
delete pClientSocket;
}
Server.Socket关闭的部分:
POSITION pos = m_ListClientSocket.GetHeadPosition();
while (pos != NULL)
{
CTCPCustom_CE &tmpTcpCustom = m_ListClientSocket.GetAt(pos);
if (!tmpTcpCustom.Close())
{
AfxMessageBox("关闭客户端socket错误");
}
m_ListClientSocket.RemoveHead();////这里调试的时候会出错,如前所述。
pos = m_ListClientSocket.GetHeadPosition();
}
问题:请大侠们分析出现在RemoveHead出现 First-chance exception in TCPServer.exe (NTDLL.DLL):0xC0000008:Invalid Handle
另外请问,那些new出来的,放在Clist中的Custom.Socket所占的内存会不会在RemoveHead的时候被一起释放掉?
相关推荐
高校技术转移办公室如何实现技术成果的智能推荐与精准路演?.docx
科易网基于AI模型+行业大数据,在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,推出科技创新领域的AI+工具与数智化解决方案,推动科技创新与产业创新智能化发展。
麻烦了熠哥,麻烦了熠哥麻烦了哈
麻烦了熠哥,麻烦了熠哥麻烦了哈。麻烦了熠哥,麻烦了熠哥麻烦了哈。麻烦了熠哥,麻烦了熠哥麻烦了哈
STM32 LCD 16×2 屏幕使用
STM32 LCD 16×2 屏幕使用
两台逆变器并联零序环流抑制+LCL并网矢量控制Simulink仿真
内容概要:本文详细介绍了基于两台逆变器并联运行的Simulink仿真模型,重点研究了零序环流抑制与LCL滤波器结合的并网矢量控制策略。通过构建精确的逆变器并联系统模型,采用先进的控制算法有效抑制零序环流,同时利用LCL滤波器提升并网电流质量,增强系统稳定性与电能质量。内容涵盖系统建模、控制策略设计、关键参数整定及仿真验证全过程,并提供完整的仿真文件与参考文献,便于读者复现与深入理解。该模型对分布式发电系统中多逆变器并网协调控制的研究具有重要参考价值。; 适合人群:电力电子、新能源发电、自动化及相关领域的高校研究生、科研人员及企业研发工程师。; 使用场景及目标:①掌握多逆变器并联系统中零序环流的产生机理与抑制方法;②学习LCL滤波器的设计及其在并网逆变器中的矢量控制应用;③通过Simulink仿真平台完成控制系统建模与性能验证,服务于科研项目开发或课程设计实践。; 阅读建议:建议读者结合提供的参考文献与仿真模型文件,逐步搭建系统模型,重点关注控制器参数设计与环流抑制效果的关系,并尝试调整工况以观察系统动态响应特性,从而深化对并网控制策略的理解。
share_b0dd64dd072936e16da2f27bbd48bdc51791767975916.mp4
share_b0dd64dd072936e16da2f27bbd48bdc51791767975916.mp4


网络编程
