在Java中使用单个UDP套接字从不同线程进行读/写安全吗

在Java中使用单个UDP套接字从不同线程进行读/写安全吗,java,multithreading,udp,Java,Multithreading,Udp,我正在编写服务于多个客户端的UDP服务器。 服务器上运行两种线程:侦听器线程(一个线程)和处理程序线程(多个)。 所有线程使用相同的套接字。侦听器线程接收传入的数据报并将其传递给相应的处理程序线程(每个客户端一个处理程序)。处理程序处理消息,创建响应数据报并将其发送给客户端。 问题是: 由于侦听器正在等待数据,发送操作可能被阻止 这种做法正确吗 1.二号。对UDP是全双工的,JavaDatagramSockets也是全双工的。处理程序创建响应(数据报)并将其发送给客户端。每个客户端都有自己的“对

我正在编写服务于多个客户端的UDP服务器。 服务器上运行两种线程:侦听器线程(一个线程)和处理程序线程(多个)。 所有线程使用相同的套接字。侦听器线程接收传入的数据报并将其传递给相应的处理程序线程(每个客户端一个处理程序)。处理程序处理消息,创建响应数据报并将其发送给客户端。 问题是:

  • 由于侦听器正在等待数据,发送操作可能被阻止
  • 这种做法正确吗

  • 1.二号。对UDP是全双工的,Java
    DatagramSockets
    也是全双工的。处理程序创建响应(数据报)并将其发送给客户端。每个客户端都有自己的“对等”处理程序。