所以我有2个QT应用程序,一个运行QLocalServer并监听连接。在另一个应用程序(客户端)连接上,它初始化一个QLocalSocket。在客户端,我只是连接到服务器。客户端是否有办法检测服务器何时关闭?现在,如果我关闭服务器而客户端继续运行,当我尝试刷新套接字时,我会得到一个SIGPIPE异常。
假设您使用继承自QAbstractSocket的子类,那么至少有两种方法来处理连接丢失。
SocketState QAbstractSocket::state() const ,
如果需要,可以查询当前状态。第二,QAbstractSocket可以触发一个信号:
void disconnected()
则可以定义自己的插槽来处理断开。