http://book.77169.org/3933/3933045.htm
多个线程可否对同一个套接字进行写操作,例如有一个SOCKET s;两个线程同时向s中写入内容,其中
一个写入为"12",而另一个写入内容为"34",在客户端接收的数据中有没有可能结果为"13","24"???
1、多个线程可以对同一socket进行收发,但是要自己进行同步
原则上说是有可能的
但是实际上的可能性很小
你可以试试发个长一点的,比如一个发1024字节个'a'
一个发1024字节个'b'
看看收到的a和b是不是分开的
不要同时读或者同时写
(1) 不会出现 13 ,24 这样的情况的
第一个线程send,会产生一个tcpid之类的东东,即使发送到一半,控制权给了线程2,线程2send后又有自己的tcpid,据TCP/IP协议,最后IP重组后得的数据依然还是 12 ,34
select/ epoll 会不会保证socket读写的同步??