我现在想弄一个向多个客户广播UDP数据的代码。方案如下:
一、为每个客户弄一个Socket,然后循环用send通过句柄向客户端广播
二、为每个客户弄一个Sockaddr,然后循环用sendto通过地址向客户端广播
三、...................................WriteFile通过句柄向客户端广播
四、...................................WriteFile通过地址向客户端广播
五、...................................WriteFile通过句柄向客户端广播(加上OverLapped)
六、...................................WriteFile通过地址向客户端广播(加上OverLapped)哪一个好呢?头大勒
一、为每个客户弄一个Socket,然后循环用send通过句柄向客户端广播
二、为每个客户弄一个Sockaddr,然后循环用sendto通过地址向客户端广播
三、...................................WriteFile通过句柄向客户端广播
四、...................................WriteFile通过地址向客户端广播
五、...................................WriteFile通过句柄向客户端广播(加上OverLapped)
六、...................................WriteFile通过地址向客户端广播(加上OverLapped)哪一个好呢?头大勒
现在是send和sendto、writefile哪一个调用快的问题了
我好像说sendto函数会隐性的调到bind等等,这么说sendto是最慢的一种了
那么send和writefile了,wsasend是可以用overlappedIO的
第二中会最慢吗?比第一个快吧。
用wsasendto就可以overlap了啊。
//udp没必要
二、为每个客户弄一个Sockaddr,然后循环用sendto通过地址向客户端广播
//一般就这样子
三、...................................WriteFile通过句柄向客户端广播
//WriteFile跟sendto内部调用一样
四、...................................WriteFile通过地址向客户端广播
//WriteFile跟sendto内部调用一样
五、...................................WriteFile通过句柄向客户端广播(加上OverLapped)
//WriteFile跟sendto内部调用一样,这跟WSASednto一样的
六、...................................WriteFile通过地址向客户端广播(加上OverLapped)
//WriteFile跟sendto内部调用一样,这跟WSASednto一样的