HP-Socket
HP-Socket copied to clipboard
m_iPending断言触发
在EnHandleResult OnReceive(CONNID dwConnID, const BYTE* pData, int iLength)函数中返回HR_ERROR 偶尔会触发m_iPending>=0
理论上 m_iPending 不可能小于0的,你再调试下看看工作线程堆栈和变量值。
目前能想到的唯一一个小于0的可能就是int值超出最大值了,不过那要2g数据,不大可能。 要不修改m_iPending的地方的下一行代码打个条件断点,当m_iPending小于0时触发断点。
直接修改了了TcpClinet.cpp文件在修改m_iPending的地方都加了断言 重新编译测试数据确实超过2g了
2147570277超过了2147483647
这是来自樊 邮箱的自动回复邮件。 您好,您发的邮件我已收到,我会及时查看并予以回复。
重新编译测试数据确实超过2g了
要么是发送太快,需要做下流控。要么是调用send时传入的length不正确。