异步和同步是不是用ioctlsocket(s, FIONBIO, &ulBlocking);就可以设置。设置成功后recv,send也是异步的? 补充:WSARecv和WSASend也是异步的。根据标题所述设置成异步后recv,send也相当于WSARecv和WSASend?谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 确切的名次,应该叫非阻塞。可以看看WSA***跟recv,send的参数区别,WSA***有用于重叠操作的参数。 问:异步和同步是不是用ioctlsocket(s, FIONBIO, &ulBlocking);就可以设置。设置成功后recv,send也是异步的?答:准确的讲不是的.是否同步还是异步看你初使化Socket时就自动生成了.如果你用WSAStartup()初使化,那么就是同步的.如果你用WSAAsyncSelect初使化,那么就是异步的.但是并不是说异步的和同步的初使化后就不能更改了.用ioctlsocket()可以控制Socket的模式,即更改同异步.但有限制.如果你想把异步的变回为同步的话,得先哦叫WSAAsyncSelect(),将最后一个参数设为0,即取消异步事件.然后再用ioctlsocket()就可以了.补充:很久没上CSDN了.如答对请给分! 如果你用WSAStartup()初使化,那么就是同步的.如果你用WSAAsyncSelect初使化,那么就是异步的.----------------老大,这句话什么意思?不懂不懂。 靠,看清msdn上,用这之间要用select ,的啊 阻塞编程:winsock 阻塞的理解:阻塞时,所有套接字阻塞,还是某个套接字阻塞?比如:在程序的某个地方:recv(sk_1, ......) //塞住了同时另一处执行 :send(sk_2, ......) //这里会塞住吗?请各位帮忙释疑? 异步和同步用ioctlsocket(s, FIONBIO, &ulBlocking)是可以设置,但是有个前提条件,就是在使用这个函数前,你没有用WSAAsyncSelect(),进行设置.如果已用了WSAAsyncSelect(),那么用ioctlsocket()来设置异步和同步是无效的.如果设置成功后recv,send也是异步的. sevencat(七猫) ( ) 信誉:97 解释的很好!!关于阻塞或者同异步的问题看了好几个了,但一直不知道怎么才能解释清楚。唉……早知到小时候就好好学语文了 恩。。是啊。。解释的不错。。学习!!异步可以通过IOCTLSOCK来设置的。。但如果使用了 WSAASYSELECT的话,它会自动把同步变为异步的,如果想改回来的话,就要再调用一次了。如果没有调用过这个函数,那么当你建立套接字的时候,默认是同步的而SELECT这个函数是一个I/O模型,用来解决异步的一种方法.WSAASYSELECT也算是一个。。还有很多呢 请问VC里面怎样捕获ACTIVEX组件发出的事件通知? 请问类似于windows资源管理器的浮动菜单、工具栏是如何实现的 DbgHelpCreateUserDump如何生成dump文件? 传输void *? 在CHtmlView中,如何获取当前滚动条的位置 编了个程序一边要存数据,一边要把3个小时前的是数据删点,要怎么做,才不影响到程序的性能啊 问一条初始化语句 如何获得窗口句柄 谁有LocWise的正式版 点运算符访问私有变量 我想问一下,怎么由一个对话框的ID得知他的指针呢~~ 这个又如何实现?--关于新建目录的。
可以看看WSA***跟recv,send的参数区别,WSA***有用于重叠操作的参数。
答:准确的讲不是的.是否同步还是异步看你初使化Socket时就自动生成了.如果你用WSAStartup()初使化,那么就是同步的.如果你用WSAAsyncSelect初使化,那么就是异步的.但是并不是说异步的和同步的初使化后就不能更改了.用ioctlsocket()可以控制Socket的模式,即更改同异步.但有限制.如果你想把异步的变回为同步的话,得先哦叫WSAAsyncSelect(),将最后一个参数设为0,即取消异步事件.然后再用ioctlsocket()就可以了.
补充:很久没上CSDN了.如答对请给分!
老大,这句话什么意思?不懂不懂。
winsock 阻塞的理解:阻塞时,所有套接字阻塞,还是某个套接字阻塞?
比如:在程序的某个地方:recv(sk_1, ......) //塞住了
同时另一处执行 :send(sk_2, ......) //这里会塞住吗?
请各位帮忙释疑?
关于阻塞或者同异步的问题看了好几个了,但一直不知道怎么才能解释清楚。唉……早知到小时候就好好学语文了