linux - 在多个线程中从同一个 UDP 套接字发送

标签 linux sockets udp

我有多个线程需要将 UDP 数据包发送到不同的 IP 地址(只发送,不需要接收任何内容)。我可以在所有线程中重用相同的 UDP 套接字吗?

最佳答案

是的,我想你可以。

由于数据包是单独发送的,虽然它们的接收顺序是不确定的,但它已经是 UDP 了。

所以在同一个套接字中发送多个线程是没问题的。

尽管如此,如果您正在使用套接字执行其他操作,例如 bind()、close(),那么您最终可能会遇到竞争条件,因此您可能需要小心。

关于linux - 在多个线程中从同一个 UDP 套接字发送,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3460645/

相关文章:

python - 多个进程共享一个监听套接字 : When a new process enters why does the old one stop?

客户端服务器通信没有发生。发送功能后不显示客户端代码

c - 我应该在平台设备上的什么地方存储动态分配的内存(不使用全局变量)?

linux - 在 bash 中按日期字段对日志进行排序

PHP set_include_path 配置

vb.net - 可以使用 VB.net 发送普通的 UDP 数据包 - 但是如何发送 WOL 数据包?

python - Twisted Spread 适合多人赛车模拟游戏吗?

linux - 将 Unix ada 应用程序移植到 Linux : Seg fault before program begins

c# - SocketAsyncEventArgs 和 ReadAsync

go - 在取消 UDP 消息上启动多个计时器