- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
? CSOCKET是阻塞的. ? 我是从来没用过. ? 按以前见过的一些高手(如OLDWORM)的建议, ? 绝对不要使用CSOCKET.会给你带来无穷无尽的烦恼(OLDWORM原话).CSocket是基于消息的,所以,需要窗口的支持你只能在MFC程序中应用而且不能在线程中对其操作,不然肯定会出现这样那样的错误。这主要和它保存消息接收窗口的句柄有关系。socket 是比较低层的,你可以设置其通信模式,相对比较灵活。可以自己控制。当然也也可以把它设置成和 CSocket形式,全看你怎么选择。//发送端typedef struct myStr{char str[100];int i;double m,CString mystring;}mystr,*mystr;.......................myStr sendstr;send(sockid,(char*)sendstr,sizeof(myStr),0);//接收端,同样定义这个结构体typedef struct myStr{char str[100];int i;double m,CString mystring;}mystr,*mystr;.......................myStr *recvstr; //注意,在这里用指针char recvbuf[1024];recv(sockid,recvbuf,1024,0);recvstr = (myStr*)recvbuf;在这里已经完成,数据已经填充到了recvstr这个指针中了·刚才查了一下书。 ? ? Socket缓冲区是分为,接收缓冲和发送缓冲的。 ? ? 接收缓冲可以直接设置大小,用 ? ? ? ? int ? maxsize=1024; ? ? setsockopt(socket,SOL_SOCKET,SO_RCVBUF,(int*)maxsize,sizeof(int)); ? ? ? ? 发送缓冲区大小: ? ? int ? maxsize=1024; ? ? setsockopt(socket,SOL_SOCKET,SO_SNDBUF,(int*)maxsize,sizeof(int)); ? ? ? ? 我是参考书上的,没试过,不知道能不能成功。 ? ? ? ? 另外,也可以把缓冲区的大小设置成0,这样数据就不会通过内存来复制一次,在一定的情况下会提高性能。不过通常都不这样做。1.IP首部用16位来表示IP包的长度,所以IP包最大限制是2^16即64K。 ? ? 2.Socket缓冲区分为接收缓冲和发送缓冲,默认值分别如下,在winsock2.h中定义。 ? ? #define ? SO_SNDBUF ? ? ? ? ? ? ? 0x1001 ? ? ? ? ? ? ? ? ? ? /* ? send ? buffer ? size ? */ ? ? #define ? SO_RCVBUF ? ? ? ? ? ? ? 0x1002 ? ? ? ? ? ? ? ? ? ? /* ? receive ? buffer ? size ? */ 据我所理解,根据OSI模型,数据包并不会在应用层进行分割.Send发送数据如果实际发送的字节数少于要发送的数据数,send函数本身不会自动调用一次send进行第二次发送.假如你发送一个1024K的数据包,但是传输层的最大传输单元只有1K,那么send依然能发送成功,只是数据包会在传输层被分成1024个包了.数据包分段控制是根据网络(传输层)的最大传输单元来控制的,而对应用层不会处理.你的误解可能由此产生. 异步SOCKET编程-发送和接收数据[转] 我本想把发送和接收分开作为两部分,但是最后我决定只略微解释一下 FD_READ ,留下更多的时间来说明更复杂的 FD_WRITE , FD_READ 事件非常容易掌握. 当有数据发送过来时, WinSock 会以 FD_READ 事件通知你, 对于每一个 FD_READ 事件, 你需要像下面这样调用 recv() : int bytes_recv = recv(wParam, data, sizeof(data), 0); 基本上就是这样, 别忘了修改上面的 wParam. 还有, 不一定每一次调用 recv() 都会接收到一个完整的数据包, 因为数据可能不会一次性全部发送过来. 所以在开始处理接收到的数据之前, 最好对接收到的字节数 ( 即 recv() 的返回值) 进行判断, 看看是否收到的是一个完整的数据包.FD_WRITE 相对来说就麻烦一些. 首先, 当你建立了一个连接时, 会产生一个 FD_WRITE 事件.
您可能关注的文档
- 2015年主治医师重点考题与答案解析.doc
- 2015年主治医师必威体育精装版考试试题与答案.doc
- 2015卫生资格《初级中药士》压轴试题与答案.doc
- 2015药用植物学教案-叶形态与结构.ppt
- 2015主管护师考试大纲与解析.doc
- 2015助理医师真题与答案解析.doc
- 2016年公卫助理医师考试精选模拟试题与答案.doc
- 2016年临床执业医师考试考点聚焦试题与答案解析.doc
- 2016年临床执业医师日常练习题与答案解析.doc
- 2016年临床执业医师综合笔试模拟试题与答案(八).doc
- 2025年智能电网柔性直流输电技术在我国西部地区应用前景.docx
- 7.2 弹力-人教版八年级物理下册.pptx
- 2025年智能电网柔性直流输电技术在智能变电站中的应用研究.docx
- 2025年智能电网柔性直流输电技术在智能电网智能化存储中的应用.docx
- 2025年智能电网柔性直流输电技术在新能源并网中的应用研究.docx
- 2025年智能电网柔性直流输电技术在智能电网智能化控制中的应用.docx
- 2025年智能电网柔性直流输电技术在智能电网智能化预测中的应用.docx
- 2025年智能电网柔性直流输电技术在智能电网智能化服务中的应用.docx
- 2025年智能电网柔性直流输电技术在智能电网智能化运维中的应用.docx
- 2025年智能电网柔性直流输电技术智能化保护系统研究.docx
最近下载
- 八年级数学(上)期末试卷 北师大版.doc VIP
- 农业合作社农资集中采购管理流程.docx VIP
- 新解读《DZ_T 0282-2024水文地质调查规范(1_50 000)》必威体育精装版解读.docx VIP
- 《建筑结构选型》全套课件(共8章完整版).pptx
- 摩登家庭台词剧本第一季第一集中英双语左右对照.pdf VIP
- 招标文件编制培训课件.ppt VIP
- (外研版(三年级起点))小学英语四上 Module 4单元测试(附答案).pdf VIP
- 人教版数学三年级上册总复习.ppt VIP
- Agilent-GCMS培训(完整版330页)教程.ppt
- 2024年外科手术部位感染预防与控制试题.docx
有哪些信誉好的足球投注网站
文档评论(0)