Java DatagramSocket class 是线程安全的吗?

Is Java DatagramSocket class thread-safe?

如果多个线程写入同一个套接字,数据会不会被破坏? (例如,发送给错误收件人的数据包)。

DatagramSocket datagramSocket = new DatagramSocket(PORT);
new Thread(() -> {
    while (true) datagramSocket.send(<DATAGRAM_PACKET_RECIPIENT_A>);
}).start();
while (true) datagramSocket.send(<DATAGRAM_PACKET_RECIPIENT_B>);

DatagramSocket#send是在你发送的数据包上同步的,所以是的。