美文网首页
回调-Java

回调-Java

作者: qingshuiting | 来源:发表于2018-07-19 22:21 被阅读0次

    回调-Java

    回调是在平常的工作中常常遇到的方法。在我们进行服务器编程或者一些方法调用的时候,我们会选择同步方法或者是异步方法(首先需要分清楚同步调用和异步调用的区别)。但是在大多数情况都会使用异步调用和回调一起使用。

    模型:A对应调用其方法的时候,实质上是调用了B对象中的C方法。在C方法中进行计算(计算的过程有两种:在当前thread中或者new 一个thread进行计算工作)。当在C中的计算工作结束以后,在C方法中去调用A对象中的某个callback函数。

    实现

    定义callback接口

    interface callback{
        cbprocessor(parameters)
    }
    
    

    实现callback的类,A对象对应的类为其。

    class ClassA implements callback{
    
        ClassB b
        
        funcA(){
            
            b.funC(this,parameters)
        }
        
        @Override
        cbprocessor(parameters){
            
        }
        
    }
    
    

    进行计算的类B,以及其对应的方法C

    class ClassB{
    
        funcC(callback,other parameters){
        
            // 计算过程,可以在当前线程或者在另一个线程中
            
            调用callback的方法
                callback.cbprocessor(parameters)
        }
    
    }
    

    在实现的过程中,具体是异步回调还是同步回调,区别就是在ClassA调用ClassB中实现的方法C中,需不需要等待计算过程结果。如果需要等待计算过程结束就是同步,如果不需要等待过程结束就是异步。

    相关文章

      网友评论

          本文标题:回调-Java

          本文链接:https://www.haomeiwen.com/subject/qwuxmftx.html