客户端,服务端同步异步

服务端异步好处:解放线程:不用一个请求就占一个线程直到请求处理完成。合并IO:batch insert,几个消息一起落地。

客户端同步服务端异步。

  Future<Result> future = request(server);//server立刻返回future
    synchronized(future){
    while(!future.isDone()){
       future.wait();//server处理结束后会notify这个future,并修改isdone标志
    }
    }
    return future.get();

客户端同步服务端同步。

Result result = request(server);

客户端异步服务端同步(这里用线程池的方式)。

Future<Result> future = executor.submit(new Callable(){public void call<Result>(){
    result = request(server);
}})
return future;

客户端异步服务端异步。

Future<Result> future = request(server);//server立刻返回future
 
return future

猜你喜欢

转载自blog.csdn.net/kobexzf/article/details/84943268