2

poll()我有一个循环调用的线程 A。该线程负责传入和传出连接的 IO。但是,当线程 B 打开一个传出连接时,它必须以某种方式将其交给 A。您认为在打开套接字后 B 写入的线程 A(读取端)和 B(写入端)之间有一个管道是个好主意吗?

4

2 回答 2

4

这听起来很合理。poll应该很高兴看到您的插座旁边的管道。

于 2012-04-23T18:32:04.987 回答
1

您可以考虑使用套接字对,而不是实际的管道。您可以创建一个unix-domain套接字对并使用send()or将消息发送到被阻止的线程sendmsg()。这种方法可能对您更方便。Unix 域套接字还支持在进程之间传递文件描述符,尽管这对您的应用程序来说太过分了。

另一种方法是poll()用信号中断调用。看到这个问题

于 2012-04-27T21:29:27.413 回答