@Override
    public void close() {
        out.sendClose(WebSocketCloseStatus.NORMAL_CLOSURE.code(), null)
                .subscribe(null, t -> {
                    if (!ThrowableUtil.isDisconnectedClientError(t)) {
                        LOGGER.error("Failed to close the connection: "
                                + getAddress().getAddress()
                                        .getHostAddress(),
                                t);
                    }
                });
    }
It is acceptable that the method isn't thread-safe
turms-gateway/src/main/java/im/turms/gateway/access/client/websocket/WebSocketConnection.java