0%

node运行机制

Patch - Publicly released update to fix a known bug/issue. Hotfix - Update to fix a very specific issue, not always publicly released. Maintenance Release - Incremental update between service packs or software versions to fix multiple outstanding issues. Service Pack - Large Update that fixes many outstanding issues, normally includes all Patches, Hotfixes, Maintenance releases that predate the service pack.

一、事件循环

      众所周知,JS从诞生之日起就是一门单线程的非阻塞的脚本语言。单线程是由其最初的用途来决定的——与浏览器交互,JS代码在执行的任何时候都只有一个主线程来处理所有的任务。非阻塞则是当代码需要进行一项异步任务的时候(如I/O事件,无法立刻返回结果,需要花一定时间才能返回),主线程会挂起(pending)这个任务,然后在异步任务返回结果的时候再根据一定规则去执行相应的回调。要实现非阻塞,就要说到我们的主角——事件循环。
      

二、I/O多路复用

  1. select
  2. poll
  3. epoll(kqueue/iocp)

三、参考

  1. Youtube演讲
  2. 演示小工具
  3. Firefox手册
  4. V8 JavaScript 引擎