gpt4 book ai didi

c - 新线程中的服务器套接字

转载 作者:行者123 更新时间:2023-11-30 19:33:07 25 4
gpt4 key购买 nike

我想创建一个服务器套接字,但不想通过“接受调用”来阻止我的主应用程序。所以我将在主应用程序中创建一个套接字。使用pthread机制我创建了一个新线程,我将在其中使用“接受调用”。在主应用程序中创建套接字后,我调用“pthread join”。现在,当该线程执行时,“接受调用”再次阻塞主应用程序。我用gdb检查过。我应该如何解决这个问题?

最佳答案

一种方法是使主服务器套接字描述符成为非阻塞并使用 select 系统调用。当 select 返回并且主套接字描述符有数据时,创建一个新线程来处理新接受的连接。通过这种方式,您可以实现并行性,创建的新连接将拥有自己的上下文,并且即使在accept()等待连接时也会尽可能地进行调度。

关于c - 新线程中的服务器套接字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46303944/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com