in gdbclient/internal/pool/conn.go [200:211]
func (cn *ConnWebSocket) doping(retry int) error {
var err error
for i := 0; i < retry && !cn.brokenOrClosed(); i++ {
err = cn.netConn.WriteControl(websocket.PingMessage, []byte{}, cn.deadline(cn.opt.WriteTimeout))
if err == nil {
return nil
}
internal.Logger.Debug("ping failed", zapPtr(cn), zap.Time("time", time.Now()), zap.Error(err))
time.Sleep(time.Second)
}
return err
}