码迷,mamicode.com
首页 > 其他好文 > 详细

关于回调函数

时间:2018-10-18 18:07:56      阅读:144      评论:0      收藏:0      [点我收藏+]

标签:sendto   过程   table   dom   wait   tty   art   style   server   

https://blog.csdn.net/a_running_wolf/article/details/49359923/

这篇文章

在Android的学习过程中经常会听到或者见到“回调”这个词,那么什么是回调呢?所谓的回调函数就是:在A类中定义了一个方法,这个方法中用到了一个接口和该接口中的抽象方法,但是抽象方法没有具体的实现,需要B类去实现,B类实现该方法后,它本身不会去调用该方法,而是传递给A类,供A类去调用,这种机制就称为回调。
---------------------
作者:衷水木
来源:CSDN
原文:https://blog.csdn.net/a_running_wolf/article/details/49359923?utm_source=copy
版权声明:本文为博主原创文章,转载请附上博文链接!

这是作者对回调的理解

总觉得差点意思,大概自己理解不深,所以也说不上来,

下图是我在工作中做的一个类似的,调用方法处是接收了来自客户端的请求,然后像netty通道写消息,又要同步在限定时间内等待client返回,

业务代码需要传入自己的请求,时间限定,以及对按时返回和超时返回的处理,是不是也是一种回调处理呢。

if (null != channel) {
      NettyServerUtils.sendToDev(channel, GsonUtil.object2Gson(centralPlatformReq));
      waitingThreadPool.newWaitingThread(
          centralPlatformReq,
          WaitingThreadPool.WAIT_5_SECONDS,
          new HandleOntime() {
            @Override
            public void handle() {}
          },
          new HandleOvertime() {
            @Override
            public void handle() {}
          });
    }

 

public void newWaitingThread(
      CentralPlatformReq req,
      long waitingTime,
      HandleOntime handleOntime,
      HandleOvertime handleOvertime) {

    String uuid = UUID.randomUUID().toString();
    CountDownLatch latch = newReq(req, uuid);

    // 发送请求完毕,同步等待五秒
    CompletableFuture<Integer> completableFuture =
        CompletableFuture.supplyAsync(
            () -> {
              try {
                if (latch.await(waitingTime, TimeUnit.MILLISECONDS)) {
                  // 5s内返回了
                  handleOntime.handle();
                } else {
                  // 超时
                  handleOvertime.handle();
                }

              } catch (InterruptedException e) {
                e.printStackTrace();
              }

              return 1;
            },
            WaitingThreadPool.executor);
    reqEnd(uuid);
  }

 

关于回调函数

标签:sendto   过程   table   dom   wait   tty   art   style   server   

原文地址:https://www.cnblogs.com/heroinss/p/9811790.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!