socket连接,仪器是服务端,仪器断电导致服务端异常断开

socket连接,仪器是服务端,仪器断电导致服务端异常断开,这时候客户端recv会收到什么?收到异常吗?客户端recv为阻塞模式,正常服务端断开与断电异常服务端断开,客户端响应会有啥区别?

如果服务端断电,客户端无法立即感知到服务端掉线。可借助心跳机制来发现这种异常,客户端定时向服务端发送心跳包,如果能正常收到服务端的回应,说明在线,如果超时,说明可能断电,也可能是网络异常等。
正常断开,是会发送断开报文,网络正常的情况下,客户端可以立即感知。