阻塞 recv() 与 fcntl()

Blocking recv() vs fcntl()

我正在使用 recv() 从套接字读取数据,并使用 fcntl() 设置套接字 blocking/non-blocking。我的问题是:如果我调用 recv()(阻塞)并且我从另一个线程调用 fcntl() 并将套接字设置为非阻塞,那么当前 运行 recv() return 或者 fcntl() 的效果只会发生在阻塞 recv() returns 之后我再调用它?

不会影响当前的接收操作

奇怪的事情。