Socket问题。。。 大家好,现在做基于 TCP/IP协议的数据传输,服务器发送命令过来要求客户端上传相关数据,我做的是客户端。。客户端发送一组数据过去,发完希望服务器发送一个数据应答表明数据接收是否成功! 但是一旦客户端没有收到这个应答,要重新发送上次发送的数据! 所以要设置一个超时判断,规定时间没有收到服务器的应答 就重传请问各位有什么好的想法没有,该怎么去实现超时判断??!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 如果是基于窗口的就可以用SetTimer KillTimer WM_TIMER如果不是基于窗口的 也可以用用一个辅助线程 或 多媒体时钟 楼主可以考虑用下面的方面设置socket接收的超时时间,具体怎么用,请查MSDN。int PASCAL FAR setsockopt( SOCKET s, int level, int optname, const char FAR *optval, int optlen); 超时用waitforsingleobject(hNevelEvent, your_timeout);hNevelEvent 是一个不会触发的事件 基于TCP的没必要设置重传机制,因为它本身已经处理过了,除非断线了你再重传。 TCP本来就是有连接可靠的传输机制吧;所以这些可以不考虑。 可在在通信协议里面 带ACK 表示是否要确认带时间标签和报文存活周期,不过要保证两边时钟一致,需要有校时机制 (菜鸟求助,大神救命!)变量的作用域问题 HOOK CreateFile导致explorer崩溃的问题 一个关于指针++的问题 第二个包 请教:如何判断一个字符是不是汉字的一部分? 初步学习“数据库”,一些小问题 vc弄一个界面出来都很难,我都没有信心弄了,很想放弃,,放弃!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 如何在对话框中创建一个它的子窗口? 新手问题:关于DBGrid的问题,请各位大侠帮帮忙! 熟悉WIN2000和VC编程的高手请进! 关于贝塞尔的平滑问题 win32服务程序,如何设置服务的描述信息?
如果是基于窗口的就可以用SetTimer KillTimer WM_TIMER
如果不是基于窗口的 也可以用用一个辅助线程 或 多媒体时钟
带时间标签和报文存活周期,不过要保证两边时钟一致,需要有校时机制