我在Linux机器上有一个服务器/客户端应用程序。如果客户端尝试发送请求时服务器未启动,我会收到SIGPIPE并终止应用程序。
在尝试编写之前,如何检查套接字上的服务器是否可用?
另外值得注意的是,我不想捕获SIGPIPE,因为客户端实际上是许多应用程序使用的共享对象的一部分,这些应用程序可能已经或可能没有定义自己的信号处理方法。
由于
答案 0 :(得分:6)
将MSG_NOSIGNAL
作为标记传递给send()
答案 1 :(得分:0)
kroki的post描述了什么似乎是一个好方法。
总结一下: