一个写线程,同一个套接字上的一个读线程?

Fri*_*ich 2 sockets multithreading

我正在运行带有FreeBSD TCP/IP堆栈的eCos.让两个线程运行一个从一个套接字读取而一个线程写入同一个套接字是否安全?

嗯,我想因为它的FreeBSD堆栈操作系统并不重要.

最好的祝福,

弗里德里希

shi*_*kou 5

AFAIK,套接字是全双工的,这意味着我们可以同时读取和写入同一个套接字.但是,您必须确保一次只有1个读者和1个作者.如果我错了,请纠正我.

  • 你没错.一个线程可以读取而另一个线程同时写入.如果读取多个线程或多个线程写入,则必须手动序列化对套接字那一侧的访问以防止重叠. (3认同)