位置: 编程技术 - 正文

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)

  • 年报纳税总额能查到吗
  • 异地提供建筑服务
  • 应交税费是什么会计科目
  • 基本户零流水如何处理
  • 企业人员信息已存在无需新增
  • 别人给开的普通发票能抵扣多少税
  • 财务报表实收资本
  • 招标代理公司转让
  • 支付货款订金入什么科目核算与会计分录
  • 哪些发票可以报销抵税
  • 设备维保费税率怎么算
  • 企业所得税税前不得扣除的项目
  • 7月3日事业单位
  • 纳税信用a级纳税人激励措施
  • 滞留发票的税收处理
  • 营业成本包括费用类吗
  • 销售库存商品是什么凭证
  • 经营用的固定资产
  • 运费专票当月如何入账
  • 华为分享连接电脑显示检查您的拼写
  • win11无限重启怎么解决
  • 苹果mac系统桌面空间不够
  • windows11关机在哪
  • 商会账目
  • 小规模纳税人和一般纳税人哪个好
  • atikdag.sys
  • qqlogin.exe是什么进程 qqlogin.exe应用程序错误解决办法
  • 结转成本类账户到本年利润的会计分录
  • Yii2 rbac权限控制操作步骤实例教程
  • ajax调用php接口
  • php基本语句
  • 直接关联和间接关联
  • 季度企业所得税会计分录怎么做
  • 外包人员的餐费可以全部扣除吗
  • 展会门票怎么入账
  • 收到客户付款多久到账
  • php判断数据类型
  • dedecms 收费
  • dedecms51
  • mysql5.7.17在win2008R2的64位系统安装与配置实例
  • 开票资料更改
  • 总公司和分公司企业所得税分配
  • mysql error!
  • 个体工商户开普票需要进项票吗
  • 收到银行电子汇票已入账怎么做账
  • 法人如何网上申请辞职手续
  • 子公司向母公司交利润 需要纳税吗
  • 自己公司刷自己的信用卡
  • 临时设施摊销属于什么资产
  • 企业购买原材料属于投资吗
  • 出口退税进项票跨月勾选
  • 外经证预交税款可以以后月份抵扣吗
  • 无形资产的费用化支出计入成本吗
  • 行政事业单位支出范围和标准
  • 利息发票可以抵税吗
  • mysql批量删除数据库死锁
  • 存储过程的输出参数有且只能有一个
  • mysql报错1091
  • linux怎么用命令
  • linux readelf命令
  • xp系统的搜索
  • windows7禁止开机启动
  • Win10桌面版红石预览版14295更新(修复)、已知问题及解决方案汇总
  • 微软平板
  • cocos2dx 3.3 + QT5.3制作游戏编辑器
  • android RecycleView 面试
  • perl $?
  • eclipse cocos2dx Couldn't load cocos2dcpp from loader
  • javascriptz
  • jQuery插件能输出到控制台
  • jquery生成div
  • Django中login_required装饰器的深入介绍
  • JS中call/apply、arguments、undefined/null方法详解
  • javascript要怎么学
  • python 遍历数组
  • 个人去税务局开劳务费怎么开
  • 消费税申报详细流程图
  • 如何打印个人所得税明细
  • 尾矿治理文件
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设