跳至主要內容

深入浅出

Cap原创小于 1 分钟node

文件模块

node引入模块三个步骤:

  1. 路径解析
  2. 文件定位
  3. 编译执行

例如require('element') 时,在node_modules中找到的是个文件夹,node会将目录当一个包来处理。
(查找的兜底是index文件名)

  1. 在当前目录下找到package.json
  2. 通过JSON.parse()解析出包描述对象,从中取出main属性制定的文件名

异步I/O

系统的异步io

非阻塞i/o会让CPU处理状态判断。通过轮询处理
轮询的演进:

  1. read
  2. select
  3. poll
  4. epoll

通过线程池来完成异步I/O

node的异步io

在进程启动的时候,node便会创建一个类似while(true)的循环,每一次循环为一次tick