2014-12-20 16 views
0

我有一个线程调用recvfrom()和另一个线程调用setsockopt()添加/离开多播成员资格。线程安全还是两个函数都需要从同一个线程调用?调用recvfrom()和setsockopt()从不同的线程添加/离开多播成员资格

+0

我不知道它是否是线程安全的,但您可以简单地同步这两个线程,以便在成员线程正在调用'setsockopt()'时,接收线程不会调用'recvfrom()',反之亦然。他们不必在同一个线程中,但你应该避免同时调用它们。 –

+0

@ close-voter关于这个问题究竟有什么不清楚? – EJP

回答

2

这些都是系统调用,而不是库函数,所以从不同的线程调用它们是安全的。

加入/离开是否会影响已经开始的并发recvfrom()是一个有争议的问题。