原帖由 sillydog825 于 2006-7-13 09:50 发表
发送方先发一个字节,再发几个字节,在windows上用CSocket的OnRecieve虚函数可以一次接收这两次发
送的数据,在linux上则有时要调用两次recv,请问linux下有没有提供象windows的消息机制来实现异步
I/O?
...
原帖由 sillydog825 于 2006-7-18 11:26 发表
现在找到一个用信号的方案来获得数据到达的通知,可是发送较大量数据的时候,信号好象会丢失,数据实际止都到了,但给的信号不够,导致最后数据收不完全,唉。。。
用select 和poll都是一种被动的方式,那样根本 ...
原帖由 sillydog825 于 2006-7-18 11:26 发表
现在找到一个用信号的方案来获得数据到达的通知,就是先挂上信号处理程序,再将socket设非阻塞方式,然后在信号处理程序中接收数据。可是发送较大量数据的时候,信号好象会丢失,数据实际止都到了,但给的信号不够 ...
原帖由 linxd0726 于 2006-7-18 13:07 发表
信号是不安全的,建议最好少用,尤其是关键操作
网络接收数据一般都用selct,设置一个超时,个人感觉没有必要区别是对方不发数据了还是连接异常断开,或是否一次接收对方n次发送的数据,只要超时就关闭连接,进行下一 ...
欢迎光临 Chinaunix (http://bbs.chinaunix.net/) | Powered by Discuz! X3.2 |