我知道nodejs使用libuv提供的线程池来执行并发作业。我读到 NodeJS 只需要其中一个线程来完成所有 I/O 绑定活动
那么非阻塞文件操作是如何发生的呢?
如果我迭代一个包含 100 个文件的文件夹并使用 readFile() 打开所有文件,那么在节点、磁盘和操作系统之间实际上会发生什么?
如果在其他多线程和阻塞语言中执行相同的操作将导致线程等待 i/o 完成,那么谁在 nodejs 中等待 i/o 完成呢?,特别是当多个文件操作同时发生时?
谢谢 !
javascript io concurrency operating-system node.js
concurrency ×1
io ×1
javascript ×1
node.js ×1
operating-system ×1