Socket编程知识

TCP编程使用到类ServerSocket、Socket

ServerSocket

  1. 在服务器端用ServerSocket监听一个端口
  2. serverSocket.accept()用于接收客户端的请求,他会阻塞服务器的线程
  3. accept.getInputStream() / accept.getOutputStream()用于接收客户端 或 向客户端发送数据

Socket

  1. 在客户端实例化Socket类连接服务端
  2. socket.getOutputStream() / socket.getInputStream()用于向服务器端发送数据 或 接收服务端发来的数据,socket.getInputStream()在没有接收到数据时,会阻塞客户端线程。

UDP编程使用到类DatagramSocket、DatagramPacket

DatagramSocket

  1. DatagramSocket在服务端监听一个端口号,在客户端创建数据发送的ip和端口

DatagramPacket

  1. 用于双放的数据接收与发送

两种实现的代码用例可参考

运输层协议TCP和UDP的区别

TCP

  传输控制协议,提供的是面向连接、可靠的字节流服务。使用了三次握手建立连接 和 四次挥手断开连接

UDP

  用户数据报协议,只负责将数据报向目的地发送,不会与服务端建立连接,故传输速度比tcp快。

发布了91 篇原创文章 · 获赞 54 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/BigBug_500/article/details/102873418