在我们编写的应用中大多是同步回调,那接下来我们就聊一下什么是同步回调,什么是异步回调?

1、什么是同步回调?

同步调用就是客户端等待调用执行完成并返回结果。

我们常用的一些请求都是同步回调的,同步回调是阻塞的,单个的线程需要等待结果的返回才能继续执行。

2、什么是异步回调?

异步调用就是客户端不等待调用执行完成返回结果,不过依然可以通过回调函数等接收到返回结果的通知。如果客户端并不关心结果,则可以变成一个单向的调用。

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

异步回调指的是:在发起一个异步任务的同时指定一个函数,在异步任务完成时会自动的调用这个函数。

(1)为什么需要回调函数

需要获取异步任务的执行结果,但是又不应该让其阻塞(降低效率),即想要高效的获取任务的执行结果。

比喻:如果把任务比喻为烧水,没有回调时就只能守着水壶等待水开,有了回调相当于换了一个会响的水壶,烧水期间可用作其他的事情,等待水开了水壶会自动发出声音,这时候再回来处理。水壶自动发出声音就是回调。

有的时候,我们不希望程序在某个执行方法上一直阻塞,需要先执行后续的方法,那就是这里的异步回调。我们在调用一个方法时,如果执行时间比较长,我们可以传入一个回调的方法,当方法执行完时,让被调用者执行给定的回调方法。

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

自我理解:同步回调函数,就像我们写得常规程序一样,从上往下依次执行,主动去调用请求执行;而异步回调函数的话,一般在执行方法时,里面嵌套一个异步回调方法,主方法不用等待异步回调执行完成,可继续往下执行。

第一节、同步回调和异步回调?相关推荐

  1. C++屌屌的观察者模式-同步回调和异步回调

    目录 一.概述 1.同步观察者 2.异步观察者 二.效果展示 三.同步观察者 四.异步观察者 五.相关文章 原文链接:C++屌屌的观察者模式-同步回调和异步回调 一.概述 说起观察者模式,也是比较简单 ...

  2. 关于js的回调函数,同步回调与异步回调

    回调定义 刚开始学习javascript时,对回调函数的理解仅仅停留在知道定义阶段.什么是回调函数? 就是将一个函数作为参数传递给另一个函数,作为参数的这个函数就是回调函数. 至于为什么要用到回调函数 ...

  3. 理解支付宝同步回调和异步回调

    支付宝同步回调和异步回调 当一个支付请求被发送到支付渠道方,支付渠道会很快返回一个结果.但是这个结果,只是告诉你调用成功了,不是扣款成功,这叫同步调用. 很多新手会拿这个结果 当作支付成功了,那就会被 ...

  4. Java回调函数异步回调案例

    1.回调函数分类 回调函数区分:同步回调和异步回调 同步回调:意义只在于完成方法调用: 异步调用:可实现并发,主业务线程可以及时释放:异步线程完成工作,执行回调函数,完成善后工作:提高了执行效率. 2 ...

  5. 回调函数 相当于线程_C++屌屌的观察者模式-同步回调和异步回调

    一.概述 说起观察者模式,也是比较简单的一种模式了,稍微工作有1年经验的同学,写起来都是666... 想看观察者模式的说明可以直接上菜鸟教程|观察者模式这个地址去看. 本篇文章其实就是一个简单的观察者 ...

  6. java filter 回调_Java 异步回调机制实例分析

    Java 异步回调机制 一.什么是回调 回调,回调.要先有调用,才有调用者和被调用者之间的回调.所以在百度百科中是这样的: 软件模块之间总是存在着一定的接口,从调用方式上,可以把他们分为三类:同步调用 ...

  7. Java接口回调,异步回调理解

    文章目录 前言 一.回调简单理解 二.Java中用接口实现回调 1.实现接口回调 1.1同步回调 1.2 异步回调 2.为啥要用接口实现 3.关于接口(基础) 总结 前言 本文是作者在学习接口回调时看 ...

  8. 【Promise】入门-同步回调-异步回调-JS中的异常error处理-Promis的理解和使用-基本使用-链式调用-七个关键问题

    文章目录 1. 预备知识 1.1 实例对象与函数对象 1.2 两种类型的回调函数 1. 同步回调 2. 异步回调 1.3 JS中的异常error处理 1. 错误的类型 2. 错误处理(捕获与抛出) 3 ...

  9. 回调函数 同步回调 异步回调

    回调函数 回调函数一般是在封装接口的时候,回调显得特别重要,我们首先假设有两个程序员在写代码,A程序员写底层驱动接口,B程序员写上层应用程序,然而此时底层驱动接口A有一个数据d需要传输给B,此时有两种 ...

  10. 接入了一个比较冷萌的第三方环迅h5网关支付,发起订单以及同步/异步回调(文档中也有官方微信支付宝接入代码资源哦)

    虽然之前对于接入第三方支付有比较多的经验,但是这次接入环迅h5支付还是花了2天半的时间才整入到项目中,遇到了一个坑耽搁了一天半,下面讲一下接入注意事项 可能大家一般都是接入微信支付宝等官方支付(微信支 ...

最新文章

  1. 【RocketMQ工作原理】消息的清理
  2. JVM GC一次调优实战
  3. SVN更新提示内容被锁定
  4. 利用InfoPath实现SharePoint Server 2013列表的级联选择(Cascading Drop Down List)
  5. java连接mysql数据库jdbc
  6. android graphics pipeline
  7. 【opencv】实时人脸+眼睛+微笑检测
  8. php curl 错误码,php,_PHP curl 错误 :curl__errno()返回错误码6,php - phpStudy
  9. 推荐参加国际会议海报制作(poster)的Latex模板
  10. 操作系统设备驱动实验实验报告
  11. Python3-word文档操作(六):word文档中表格的操作-单元格文字居中,字体颜色等的设置
  12. FPGA入门到精通系列1:数字电路基础知识
  13. 中控考勤机Java二次开发(附Demo)
  14. 骚操作:Mac局域网控制Windows10主机
  15. 洛谷 P3403 跳楼机
  16. 代数结构与有限域之 群
  17. Does setting the following sysctl settings require a system reboot?
  18. 计算机网络实训报告动态路由,实验报告OSPF动态路由的配置
  19. 2023最新无人机专业现状分析及完整“产教融合”人才培养解决方案(超详细)
  20. EndeavourOS移动硬盘安装

热门文章

  1. 十代服务器芯片组,Intel自曝400、495系列芯片组:搭档十代酷睿
  2. 如何发布类Excel的管理软件
  3. 计算机怎么设置内存数据恢复,相机内存卡数据恢复的操作图解
  4. 群晖搭建discuz论坛
  5. pdf会签_图纸会签规定
  6. 2022-2028年中国手机银行行业市场竞争态势及未来前景分析报告
  7. Mysql 分表分区
  8. Python Django 添加首页尾页上一页下一页代码实例
  9. MCS:离散随机变量——Binomial分布
  10. linux下自动删除文件夹,如何在Linux中自动删除或清理/tmp文件夹内容?