V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
ctftemp
V2EX  ›  程序员

刚开始学 nodejs,有一些疑问

  •  
  •   ctftemp · Dec 26, 2015 · 3273 views
    This topic created in 3786 days ago, the information mentioned may be changed or developed.

    不知道下面我关于 js 异步 io 的理解对不对:
    1.nodejs 的异步 io 实际上是通过封装 epoll 等 io 复用函数,在用户态实现了异步 io ,而底层实现上还是基于事件驱动和同步 io 的。

    2.我试验以下代码:

    setTimeout(function(){
            console.log("1");
    },5000);
    

    我原以为程序会直接退出,结果是等待 5 秒后触发回调再退出。那是不是可以理解为我们写的 js 代码都是运行在一个大的对用户不可见的 event loop 中?

    7 replies    2015-12-27 00:17:11 +08:00
    vietor
        1
    vietor  
       Dec 26, 2015 via Android
    ctftemp
        2
    ctftemp  
    OP
       Dec 26, 2015
    @vietor 谢谢
    boyhailong
        3
    boyhailong  
       Dec 26, 2015
    底层是基于 libuv 的 看下源码就明白了啊
    SonicY
        4
    SonicY  
       Dec 26, 2015
    Linux 下用的 libeio
    ctftemp
        6
    ctftemp  
    OP
       Dec 26, 2015
    @haozhang 这篇介绍的太清楚了,非常感谢!
    zhuangzhuang1988
        7
    zhuangzhuang1988  
       Dec 27, 2015
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5888 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 58ms · UTC 06:14 · PVG 14:14 · LAX 23:14 · JFK 02:14
    ♥ Do have faith in what you're doing.