首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Java MulticastSocket线程安全吗?

Java MulticastSocket线程安全吗?
EN

Stack Overflow用户
提问于 2010-06-24 17:23:43
回答 2查看 2.5K关注 0票数 6

我有两个线程。第一个线程使用MulticastSocket in循环发送数据报;第二个线程使用MulticastSocket in循环的相同实例接收数据报。

它似乎工作正常,但我仍然心存疑虑。

这两个线程可以使用相同的MulticastSocket实例吗?在发送/接收方法调用方面,MulticastSocket线程安全吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-06-24 17:36:49

发送和接收DatagramSocket方法都在发送/接收数据报包上同步。换句话说,如果您使用相同的数据报包从两个不同的线程发送和接收,则这两个方法将同步,因为它们将使用相同的对象作为同步令牌。

只要查看一下DatagramSocket的源代码,就会更容易理解。

票数 6
EN

Stack Overflow用户

发布于 2010-06-24 17:30:53

DatagramSocket is thread safeMulticastSocket是一个派生类,因此MulticastSocket.send是线程安全的,因为访问是由synchronized block序列化的。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3108644

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档