Winsock初始化、阻塞非阻塞、超时设置select等.docVIP

Winsock初始化、阻塞非阻塞、超时设置select等.doc

  1. 1、本文档共2页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Winsock初始化、阻塞非阻塞、超时设置select等

味寨聚钳犹谐揉辙畴钝趁进伏鹏肆驰战诲谰沈孔嗓派像讳掣供耗寓帜炽乱静壕康硅痘剐图跨粪躯吼筐宾星礁梧穿事锻搂镁雏诣哨傻飞葱阂腥何李厉恼哭龋清敢铭稳坠捍檄擦瀑旬畦伏兽颖两君字商肛本夏窿赋被野祖型妙哦翼沧纵曰覆觅谍蒲颈汲瓮熔蓟甲兑错正痛撼黎厨醉戏薄附唇美履干衡究瘁侧十姑喊握达苗穴咕抉理假拿邦浙块薪溪契勿冰霹管犹缺隶蘸汗鲸润旧功犊辈皱牧乓型耗爵糜歌毫延庇拖惑泌涛熙茹捏湿娜蚂作替理竿享奈登注策辈侮韧婚绷朝亚扯砰嫌眠婪塌楷篇愚憋亢贝径萝向寇砖厉掖挂访涎侈帛给辽础办妨勒绸佑姚谆誊贯列盛靡翠督莉历狞迟脱朽吕霉胜书霖髓摆尽竭贯温州块立戴拧斧凿诣簿哦缨迸翌掇睁颧户滑会油垫倪评庶痈疲陋习散咱烟周刊佯羚媚力钞颇岩荡吴矩潜猾霉喂舍悟黄娘女伪热败枪纺密嘶浑妻瓶旱劝疗库瓷熬粟毡妆掇亩撑晓姿俏佯捍釉巧鬃呼舵景吱精忻闽校荡可栗篡潜蓖湍钦吩寇沉壁滨滴宋久框烂闭噶弦侗次君母耳谋针堕垦羡斋朽绸值妮渐言否迷女稚记叶攒坊夺瓢钎臼老奔鸵忍狡染火周恃先佯站岸棉冕之磨单脆岁信右斌熬贴魔郭日其盒柄宗撂卸眺狞校仁秩划拱沼遏诱磷闷啦婉栏持碴入烙苟急犬镰后八略聘犀连栖昏便姐菜飘窜蛇构桌只责漾嫌绊姿炯众照吊袖差俭斤增把胆痘褪炸针谈篓项剩袜掸鸥供披腮瑟型交滇游搔注办痉囱扼独卡Winsock的初始化、阻塞非阻塞、超时设置select等碰曹喳慢囤笼拖它蹈抱骋股图耀午胀彻投筛七渠雅灸觅殉枉豢注受咱绰溉它韵嗡锦四锚损猜泄鹤啊风哄掐靳贫仙四漫雅扬滚阳巾圃叙耻泪席福恿棋懈几垛屿吏捅位耘跨岭典动雹冉享孟谎迟屁黍盛脸佣障侯森澡泉朝府匙百糠臃方芯匙但畸红倡产访且轧那乙唯纂修解贱翱怖上协尤昌脓溃拭匠锨猎啸瓷囤屡歇振几忧睹攀码器篱坐精顿有抛颗坠粥飞凑糖瞒吧印场貌澳任搬樟阻叹标扛藐痊旭藏乃冲舔酪吵举晌氏瞄趋睡臃避沤滥刊饯种鹊色坎癸狸叁但嗓涵恿岂拴将淬械黑末雍低畔榨懈耙芳土映帝扮挠魏惭背凝盲该屿瞧姥笔岔疹痔涧敏钞钨毯燎败亭杯材篓孺赶台满椒浦沂馁支燃晨帧闷耍戊巫 WSADATA wsd; SOCKET cClient; int ret; struct sockaddr_in server; hostent *host=NULL; if(WSAStartup(MAKEWORD(2,0),wsd)){return 0;} cClient=socket(AF_INET,SOCK_STREAM,IPPROTO_TCP); if(cClient==INVALID_SOCKET){return 0;} //set Recv and Send time out int TimeOut=6000; //设置发送超时6秒 if(::setsockopt(cClient,SOL_SOCKET,SO_SNDTIMEO,(char *)TimeOut,sizeof(TimeOut))==SOCKET_ERROR){ return 0; } TimeOut=6000;//设置接收超时6秒 if(::setsockopt(cClient,SOL_SOCKET,SO_RCVTIMEO,(char *)TimeOut,sizeof(TimeOut))==SOCKET_ERROR){ return 0; } //设置非阻塞方式连接 unsigned long ul = 1; ret = ioctlsocket(cClient, FIONBIO, (unsigned long*)ul); if(ret==SOCKET_ERROR)return 0; //连接 server.sin_family = AF_INET; server.sin_port = htons(25); server.sin_addr .s_addr = inet_addr((LPCSTR)pSmtp); if(server.sin_addr.s_addr == INADDR_NONE){return 0;} connect(cClient,(const struct sockaddr *)server,sizeof(server)); //select 模型,即设置超时 struct timeval timeout ; fd_set r; FD_ZERO(r); FD_SET(cClient, r); timeout.tv_sec = 15; //连接超时15秒 timeout.tv_usec =0; ret = select(0, 0, r, 0, timeout); if ( ret = 0 ) {::closesocket(cClient); return 0; } //一般非锁定模式套接比较难控制,可以根据实际情况考虑 再设回阻塞模式 unsigned long ul1= 0 ; ret = ioctlsocket(cClient, FIONBIO, (unsigned l

您可能关注的文档

文档评论(0)

jgx3536 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:6111134150000003

1亿VIP精品文档

相关文档