客户端一般是一个发送线程维护着一个socket,该发送线程负责发送数据。
建立多个发送线程竞争一个socket进行发送数据没什么意义,并不会提高发送速度,因为socket只有一个,只要socket在发送一个发送线程的数据时,该socket就被占用了,是不会响应其他发送线程的发送数据请求的。除非客户端维护着多个socket。
服务端使用多线程向多个客户端同时发送数据可以提升发送速度是因为服务端维护着多个socket,每个socket对应一个客户端session连接,多个线程可以同时执行多个socket的send方法进行发送数据,从而提升发送效率。