src/main/java/com/alipay/remoting/rpc/RpcRemoting.java
public void invokeWithCallback(String addr, Object request, final InvokeContext invokeContext,
                                   InvokeCallback invokeCallback, int timeoutMillis)
                                                                                    throws RemotingException,
                                                                                    InterruptedException {
        Url url = this.addressParser.parse(addr);
        this.invokeWithCallback(url, request, invokeContext, invokeCallback, timeoutMillis);
    }
public void invokeWithCallback(String addr, Object request, final InvokeContext invokeContext,
                                   InvokeCallback invokeCallback, int timeoutMillis)
                                                                                    throws RemotingException,
                                                                                    InterruptedException {
        Url url = this.addressParser.parse(addr);
        this.invokeWithCallback(url, request, invokeContext, invokeCallback, timeoutMillis);
    }
Rpc invocation with callback.<br>
Notice! DO NOT modify the request object concurrently when this method is called.

@param addr
@param request
@param invokeContext
@param invokeCallback
@param timeoutMillis
@throws RemotingException
@throws InterruptedException