如何检查服务器是否在c?

时间:2013-11-25 06:39:45

标签: c sockets client-server

我有3个程序在运行。客户端,主服务器和备份服务器。我想以某种方式确定主服务器是否启动(它是否崩溃),以便如果不是,我可以将消息发送到备份。我试过if(send(....)> = 0){....}这显然不起作用,还有其他想法吗?

1 个答案:

答案 0 :(得分:0)

从您的客户端,您需要不断尝试从服务器读取数据。 像这样的东西: 如果您使用的是基于Linux的服务器/客户端。

while ( (n = read(socket_fd, recvBuffer, sizeof(recvBuffer)-1)) > 0)
{
    recvBuffer[n] = 0;
    if(fputs(recvBuffer, stdout) == EOF)
    {
        printf("\n Error :  error in Fputs\n");
    }
} 

您可以使用connect并传递服务器地址来创建此socket_fd。