跑好之后,再丢给队列吗?
|
jswhSep 28, 2015
1
单线程
|
|
int64agoSep 28, 2015
3
底层是多线程的,只是在 JavaScript 这一层才是单线程的
|
|
jswhSep 28, 2015
4
http://blog.getify.com/promises-part-1/这系列文章的第一部分解释了 js 引擎单线程并发的原理,讲得挺清楚的
|
|
wuliao49Sep 28, 2015
5
3 楼是对的。不分青红皂白的说 NODE 就是单线程的朋友进误区了
|
|
joyeeSep 28, 2015
6
Node.js 里 JavaScript 代码的执行是单线程的,但是在底层无论是 V8 还是 libuv 都不是,比如 V8 是一个线程做编译执行一个线程做优化几个线程负责 GC 还有线程负责 profiling 找 JIT 目标, libuv 有线程池配合 epoll 之类做 I/O 多路复用,还有其他部分也是……
|
|
joyeeSep 28, 2015
8
@jswh JavaScript 本身跟事件循环没太大关系的,你在 ECMAScript 的 spec 里是看不到相关的东西的,同理你在 V8 里也找不到类似什么 setTimeout 之类的东西……浏览器里的事件循环属于 BOM , Node 里的事件循环是包装了 libuv 而已, libuv 是有线程池的
|
|
lcj2classSep 29, 2015
9
|
|
weSep 30, 2015
10
|
|
darlucSep 30, 2015
11
9 楼的图不错哦
|