DWORD WINAPI CKaiDlg::RecvProc(LPVOID lpParam)
{
CKaiDlg *pCKaiDlg=(CKaiDlg*)(lpParam); char recvBuf[200];
while(1)
{
memset(recvBuf, 0, sizeof(recvBuf));
recvfrom(pCKaiDlg->sockClient,recvBuf,100,0,(SOCKADDR*)&(pCKaiDlg->addrSrv),&(pCKaiDlg->len)); memcpy(&recvmsg,recvBuf, sizeof(recvBuf));
如何通过 CWindow::PostMessage或::PostMessage将recvBuf信息 发送给 创建此线程的窗口 CKaiDlg
}
{
CKaiDlg *pCKaiDlg=(CKaiDlg*)(lpParam); char recvBuf[200];
while(1)
{
memset(recvBuf, 0, sizeof(recvBuf));
recvfrom(pCKaiDlg->sockClient,recvBuf,100,0,(SOCKADDR*)&(pCKaiDlg->addrSrv),&(pCKaiDlg->len)); memcpy(&recvmsg,recvBuf, sizeof(recvBuf));
如何通过 CWindow::PostMessage或::PostMessage将recvBuf信息 发送给 创建此线程的窗口 CKaiDlg
}
解决方案 »
- IOCP服务器运行半小时后, 就再也不接受新的客户端连接?
- VC6.0代码出错分析。。
- 为什么我用atl开发的activex可以在 vs2005带的“activex控件测试容器”中插入,却在mfc对话框上右击插入activex中看不到?
- 基于SNMP的在线主机性能监测与性能分析与基于PRTI的计算机网络通讯仿真
- 服务端SOCKET怎么知道网络断开?
- 关于CEDIT控件的问题
- 请问!!!!!
- 微软是如何将文本文件压缩成码表文件的。*.TXT->*.MB
- *.3DT是什么类型的文件?
- 请教安装VS.NET时的问题
- 十万火急,请大家进来看一下
- (继续发问)在RichEdit插入多张位图,右键选中时,怎样才知道当前选取取的是那一张位图
pCKaiDlg-> function(recvBuffer)
原来是 是写了个函数function1(),放到while(1)里面
用于数据处理,但是有的 udp数据包丢失,看到postmessage 直接将 信息发送后 不等待就返回,
觉得这样用的话 可以不影响
while(1)
[
}
接收数据,就不会再丢 udp数据
两个功能,1 将得到的数据 在对话框 的 编辑框里显示 包括 CString 的处理
2 查access数据库 并 找到对应 记录,将对应的记录选择出来 在对话框的 多个 编辑框和列表控件里显示。
开始去掉了功能 2,接收数据 线程 还是 丢udp数据
考虑 去掉 1 2 都去掉,通过postmessage 将信息发送出去 应该 会使
接收 数据 while(1)
不倍再占用 更多 时间,应该就不会丢数据了吧?大家有什么好 其他的好办法吗?
想来应该 是mfc程序 接收数据 的while(1) 不能及时 接收 数据吧
如何 提高 while(1)接收 数据的 效率呢?