
vc编程
ldhshao
计算机专业
展开
-
IOCP调试总结
文章目录编程模型1+n模式1+n+n模式遇到的问题发完成消息延时过长甚至丢失近半年来,采用了IOCP方式处理多连接问题,现在总结一下。编程模型1+n模式一个接受线程R和n个工作线程W组合。接受线程R负责接收新的连接请求,并将该连接的socket绑定到特定的IOCP端口上。工作线程W负责响应收发完成消息,并按通信协议要求发起新的收发请求。工作线程可以有多个。使用时,最好将IOCP端口和...原创 2019-12-20 11:09:54 · 183 阅读 · 0 评论 -
调试NO_MORE_USER_HANDLES问题
文章目录问题描述分析过程问题描述一台站机管理m台分机,测试多分机时,发现如下现象:当分机数位400时,界面卡死;当分机数为200时,一切正常。由于界面刷新是通过定时器来不停刷新界面的,于是在定时器处理函数中添加断点。但该断点一直没执行。在msdn上查Cwnd::SetTimer说明,该函数正常返回非零数值,失败则返回零。检查SetTimer返回值,在失败情况下,通过GetLastError...原创 2019-12-18 13:42:16 · 422 阅读 · 1 评论 -
更换CComboBox的属性
原文链接:http://www.codeproject.com/KB/combobox/recreatecombobox.aspx这篇文章不错,担心以后被网站删除掉,难以看到,于是,放在这。以后自己查看也方便。呵呵 Dynamically re-creating a combo boxBy Paul Vickery | 2 Aug 2002 Function to recreate a combo box at run-time to allow new styles, preserving its dat转载 2010-09-29 11:05:00 · 1049 阅读 · 0 评论 -
_CrtDbgReport: String too long or IO Error
<br />摘自:http://www.cnblogs.com/BeyondTechnology/archive/2011/01/09/1931533.html<br /> <br />wprintf_s不能正常输出中文的解决办法<br />使用如下方法调用wprintf_s输出中文时往往出现带?的乱码:<br />wprintf_s(L"%s",(LPCWSTR)cmdLineArr[1]);<br /> 解决方案:包含头文件locale.h,并在程序开始调用setlocale(LC_ALL原创 2011-01-18 18:48:00 · 1811 阅读 · 0 评论 -
sqlite3:Unable to open database file
文章目录现象原因解决方法参考文献现象1.测试程序时发现sqlite insert失败;2.调试时,发现错误消息是"Unable to open database file"3.复制了sql语句,在命令行下打开sqlite数据库,执行插入语句,依然出现“Unable to open database file”原因参考 https://www.cnblogs.com/xingluzhe/...原创 2019-06-14 14:05:34 · 18687 阅读 · 0 评论 -
无符号数值越界处理
1.关于u32,计算公式如下; u32 u32_a, u32_b, u32_diff; u32 u32_max = 0xFFFFFFFF; u32_diff = (u32_b > u32_a) ? (u32_b - u32_a) : (u32_max - u32_a + 1 + u32_b);// u32_diff = u32_b - u32_a; is OK;2.u3...原创 2019-07-28 00:22:17 · 1084 阅读 · 0 评论 -
一次死循环调试
一次死循环调试一种隐含死循环现象分析原因解决方案总结一种隐含死循环现象在项目中,站机软件与多台分机通信,发现如果一台分机连接不上后,UI界面基本卡死。于是,开始查找什么原因导致UI无响应,后来发现OnTimer函数调用了DealHeatinglist,DealHeatinglist有可能造成死循环。void c_jyq_dlg::DealHeatinglist(CTLinkList<...原创 2019-07-28 00:27:16 · 422 阅读 · 0 评论 -
使用IOCP时怪异现象-多连接状态异常
文章目录IOCP多连接管理基本模型连接状态服务端通信过程现象分析原因代码log1:只记录client socket和statuslog2:记录线程ID,当前行号,client socket和status解决方案IOCP多连接管理基本模型server端IOCP多连接管理基本模型如下:1)启动一个接受线程,用于接受client发起的连接请求;2)创建一个IOCP(I/O complete po...原创 2019-07-28 00:30:39 · 404 阅读 · 0 评论