我用的是CSocket,在客户端阻塞接收数据,单线程(因为每次数据不大,大概就1 2秒,所以没开多线程)
但是发现如果正在传输的时候 如果服务器那边断了,
客户端不知道,一直在那里阻塞接收,
想问一下怎样编程实现让它阻塞超过10秒以后返回错误并断开
在想个问题
settimet是基于窗口的
我只是实现一个类提供连接啊传输数据
不想新建一个空窗口如果用心跳包的话
是不是要弄成多线程的,在其他线程中知道网络断开了,然后终止数据传输线程呢?如果单线程还有其他办法么,各位大大们啊 99我吧
心力交瘁啊
但是发现如果正在传输的时候 如果服务器那边断了,
客户端不知道,一直在那里阻塞接收,
想问一下怎样编程实现让它阻塞超过10秒以后返回错误并断开
在想个问题
settimet是基于窗口的
我只是实现一个类提供连接啊传输数据
不想新建一个空窗口如果用心跳包的话
是不是要弄成多线程的,在其他线程中知道网络断开了,然后终止数据传输线程呢?如果单线程还有其他办法么,各位大大们啊 99我吧
心力交瘁啊
解决方案 »
- 关于程序跑了一段时间报错的问题
- 程序调试时出现计算机中丢失avcodec-52.dll
- windows服务程序中监听端口 socket
- 关于矩形填充的一些问题
- 高分求解,关于GDI映射模式的问题,高手进,在线等!
- 在MDI中怎样通过自己的菜单激活一新的视图?
- dbgrid(多sheet) 中的内容如何输出到 excel中
- 哀其不幸,怒其不争,中国的系统集成商们,你们都做什么去了,中国的软件提供商,你们做什么去了,HP虽然提供软件解决方案,但却不是专业
- 如何手动注册Active控件?
- 如何让CPropertySheet总是浮动在最前端?
- 如何获取Windows Media Player的播放状态?
- hook CreateWindowEx的问题
我刚才是弄这个东西
很多不明白,我现在是同步的,还是单线程,怎么感觉你说的是异步socket的呢
打错了
我想问的是要不要弄成多线程少了个 多 字
我不想开多线程啊
感觉传h_socket句柄很烦
如果是mfc,不是有定时器消息么?
如果不是mfc,那你也应该可以设置超时时间的啊
感觉太变态了
还是用定时器算了
我现在去试试~~~
谢谢大家帮忙呵