V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
okface
V2EX  ›  Node.js

对新手而言解决 node 异步改同步问题的最简单方案是什么。。

  •  
  •   okface · 2018-01-18 12:40:55 +08:00 · 5070 次点击
    这是一个创建于 2536 天前的主题,其中的信息可能已经有所发展或是发生改变。
    已经确认是异步的坑(同时发出上万个 http 请求),试了 setTimeout,但是跑出来的结果每次都不一样。。所以 pass
    看了一圈是 co 最简单吗?是的话求推荐 co 教程?
    17 条回复    2018-01-24 10:47:01 +08:00
    gouchaoer
        1
    gouchaoer  
       2018-01-18 12:50:25 +08:00 via Android
    go
    spark
        2
    spark  
       2018-01-18 12:52:22 +08:00
    什么叫异步改同步?
    async/await
    tushankaka
        3
    tushankaka  
       2018-01-18 13:02:36 +08:00 via Android
    asyn/await
    SoloCompany
        4
    SoloCompany  
       2018-01-18 13:35:20 +08:00 via iPhone
    fiber 和 runEventLoop 都可以实现不修改已有代码为前提的转换
    luoway
        5
    luoway  
       2018-01-18 13:36:15 +08:00
    最简单的当然是回调,一个异步完了回调下一个,都完了回调结束。
    v2xe2v
        6
    v2xe2v  
       2018-01-18 13:38:02 +08:00
    async
    tmac
        7
    tmac  
       2018-01-18 13:43:23 +08:00
    circleee
        8
    circleee  
       2018-01-18 15:14:08 +08:00
    asyn/await


    我第一次写爬虫也是这个样子,我一跑我的脚本网络就断掉。
    Jealee
        9
    Jealee  
       2018-01-18 15:15:34 +08:00
    当然是官方的 async/await
    duan602728596
        10
    duan602728596  
       2018-01-18 15:51:59 +08:00 via iPhone
    Promise + async / await
    exonuclease
        11
    exonuclease  
       2018-01-18 22:13:50 +08:00 via Android
    async await
    zonghua
        12
    zonghua  
       2018-01-19 05:33:44 +08:00 via iPhone
    typescript 写起来像 C#一样好
    GabrielChen
        13
    GabrielChen  
       2018-01-19 11:12:37 +08:00
    不改代码就用 async,把你们函数放进 async 提供的封装函数就行了,控制并发,流程什么的都有。改代码就用 async / await 改写吧
    fov6363
        14
    fov6363  
       2018-01-19 11:49:07 +08:00
    bluebird 的 Promise.map.可以控制并发次数
    royzxq
        15
    royzxq  
       2018-01-19 12:07:48 +08:00
    async/await
    seeksnow
        16
    seeksnow  
       2018-01-23 15:36:21 +08:00
    asyn/await
    用过都说好
    qinming101
        17
    qinming101  
       2018-01-24 10:47:01 +08:00
    Promise -> async await
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1150 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 18:23 · PVG 02:23 · LAX 10:23 · JFK 13:23
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.