异步回调我的理解:
1.使用了委托模式,调用方(ServiceA)持有被调用方(ServiceB)的引用,然后调用被调用方(ServiceB)的方法,被调用方方法(ServiceB)完成后,调用调用方(ServiceA)的回调函数做一些事情
2.异步回调多是一些耗时的操作,在新线程中去调用被调用方(ServiceB)方法
3.异步回调可以大大提高IO效率,这是当前开发的主流,比如Netty、Node大量使用异步调用思想
4.多使用匿名内部类实现回调
实例:
调用方(ServiceA)调用被调用方(ServiceB)方法创建用户,创建完成后,被调用方(ServiceB)调用调用方(ServiceA)回调函数做一些事情(写数据库、发消息。。whatever)
回调接口:
public interface CallBack {
void process(String result);
}
ServiceA:
public class ServiceA {
private ServiceB serviceB;
public ServiceA(ServiceB serviceB) {
this.serviceB = serviceB;
}
public void createUser(String userName)