今天把原来用UDP做的数据传输模块改成了用TCP做。TCP这东西我已经很久没接触了,今天用起来还是有点生疏的。与UDP不同的是,TCP的服务器端需要有一个监听和接收来自客户端的连接请求,而客户端需要连接服务器端。也就是所说的三次握手吧。
因为在服务器端进行监听的时候,服务器上不能进行其他操作,因此我专门建了一个线程用于监听和接收数据。而本来想要建立的异步套接字,通过这个方法来实现异步通信,这下有了一个新的线程就不用了。这次我用了一个循环嵌套,也就是两个while(true)函数,一个用于初始发送数据,一个用于下一步接收查询。
具体代码如下:
继续努力吧。