位置: 编程技术 - 正文

Nodejs回调加超时限制两种实现方法(node 回调函数)

编辑:rootadmin

推荐整理分享Nodejs回调加超时限制两种实现方法(node 回调函数),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:nodejs回调函数详解,node pipe回调,nodejs函数返回值,node.js回调地狱,node.js回调地狱,nodejs 回调,nodejs 回调,nodejs回调函数,内容如对您有帮助,希望把文章链接给更多的朋友!

Nodejs回调加超时限制两种实现方法

Nodejs下的IO操作都是异步的,有时候异步请求返回太慢,不想无限等待回调怎么办呢?我们可以给回调函数加一个超时限制,到一定时间还没有回调就表示失败,继续后面的步骤。

方案1:用async的parallel实现

在这里我用到了async的parallel方法,parallel可以让若干个异步回调的方法并行执行,正常情况下,所有回调函数都完成后会汇集到parallel最终的回调函数里,但是有一种例外,如果其中一个步骤有错误抛出并直接调用parallel最终的回调函数,利用这个特点就可以实现我们要的功能。

我封装了一个函数asyncWrapper, 逻辑比较简单,直接看代码:

async-timer.js

你可以直接运行这个js看看效果:

Nodejs回调加超时限制两种实现方法(node 回调函数)

模块调用方法:

这种方案的好处是对node没有最低版本要求,引入async库就可以用,缺陷是最终返回的值都是在一个参数里面以数组的形式呈现。

方案2:用Promise实现

在promise里面加settimeout,超过时间就reject。

promise-timer.js

模块调用方法:

这种方案要求nodejs版本高于5.0,支持Promise。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Node.js 8 中的 util.promisify的详解 Node.js8于上个月月底正式发布,带来了很多新特性。其中比较值得注意的,便有util.promisify()这个方法。util.promisify()虽然Promise已经普及,但是Node.js里仍

详解nodejs模板引擎制作 关于模板,我倒是用过了不少。最开始要数Java的JSP了,然后接触了PHP的smarty,再就是Python的jinja2,Django内置模板,现在刚开始看Nodejs,也发现了不少类似

详解Nodejs之npm&package.json 一直以来,作为前端开发,在公司都是先写好页面,然后再跟后端合作,将数据填入前端页面中,但是偶尔自己闲来无事,也会看一些框架什么的,然

标签: node 回调函数

本文链接地址:https://www.jiuchutong.com/biancheng/382097.html 转载请保留说明!

上一篇:node.js中cluster的使用教程(nodejs inspect)

下一篇:Node.js 8 中的 util.promisify的详解(nodejs+ts)

  • 无票收入后面附单据吗
  • 个人所得税减除费用5000是什么意思
  • 税收滞纳金调增填哪张表
  • 公司缴税怎么计算的
  • 免税合并和应税合并商誉
  • 当月购入固定资产计提折旧吗
  • 电子税务局怎么添加财务负责人
  • 最近的火车票代售点
  • 工程资金占用计算利率是多少
  • 未确认融资费用是一级科目吗
  • 个税返还交所得税吗
  • 股东分红个人所得税怎么申报
  • 电子发票可以做报销凭证吗
  • 生活垃圾处理项目基础金融产品包括
  • 汇算清缴需要补税
  • 车船税为什么没有优惠
  • 文化事业建设费计入什么科目
  • 一般纳税人有进项无销项
  • 派发现金红利怎么知道有没有
  • 支付给外单位的押金是其他应收款吗
  • 小额纳税人增值税专用发票税率1%
  • 预提费用冲销需要重新计提吗
  • 电商运费怎么做账
  • 棚户区改造贷款管理办法
  • pc端微信怎么更新
  • Win10怎么清除系统
  • 浏览器备份文件在哪里
  • iphone操作系统
  • 苹果14发布会时间
  • 费用发票开的是跨年的账务处理
  • 购入的无形资产
  • php array数组
  • seti@home.exe - seti@home是什么进程 有什么用
  • UserScripts Safari 苹果iOS上特别好用且免费的脚本插件,五分钟学会
  • 公司转让债务债权协议
  • 资产减值损失如何录入
  • 深度学习实战——不同方式的模型部署(CNN、Yolo)
  • php读取excel文件
  • 所得税申报表应怎么填
  • php设置title
  • 合伙企业退伙个税
  • 使用van-picker 动态设置当前选中项
  • 工会经费没有交能买发票吗
  • 游戏公司的主营业务是什么
  • 银行存款利息收税吗
  • 会计成本确认
  • 帝国cms使用手册
  • 增值税发票价税合计不能超过多少
  • 个人所得税10月份申报期
  • 烟叶税计算时价格怎么算
  • 个体户季报网上申报怎么填写
  • 公对公开税票流程
  • 自产产品用于业务招待
  • 社保应该如何缴纳
  • 开出增值税发票确认收入分录?
  • 发生销售折让的双方应做的会计分录是
  • 去年的车辆保险今年才开怎么做分录
  • 医保账户收入金额是怎么算的
  • 购买材料预付定金填什么凭证
  • 新成立公司实收资本没到位该怎么做账
  • 企业职工薪酬如何确定
  • mysql 定点数和浮点数
  • xp文件夹选项在哪里打开
  • xp系统如何清除所有盘的东西
  • centos7 中文支持
  • haozipsvc.exe是什么
  • linux vim使用
  • windows8的ie浏览器在哪
  • win8安全和维护在哪
  • cocoswot
  • Android游戏开发实践指南
  • python获取命令行执行命令的输出
  • cocos2dx官方教程
  • parseint函数功能
  • mono为什么不能用了
  • Unity3D Vuforia Android 相机调焦
  • 深入学习习总书记系列讲话精神
  • js dom方法
  • 契税个税怎么说
  • 地方税务局发票管理所
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设