var a = {};为全局变量,write(a)基于事件,可对a进行修改。 想问的是,当一个子线程收到事件,正在对a进行修改的同时,主线程调用get(a)尝试读取a的值。会怎样?
5 回复
我一直困惑,在event loop里面,某个事件被激活要去执行的时候,是node主进程去执行,还是底层C代码会fork一个子线程去执行? 如果是后者,怎么保证不冲突呢。
如果如你所说不可能出现,我想设计一个用例去证明。这个用例的设计能否不吝赐教?
var a = {};为全局变量,write(a)基于事件,可对a进行修改。 想问的是,当一个子线程收到事件,正在对a进行修改的同时,主线程调用get(a)尝试读取a的值。会怎样?
我一直困惑,在event loop里面,某个事件被激活要去执行的时候,是node主进程去执行,还是底层C代码会fork一个子线程去执行? 如果是后者,怎么保证不冲突呢。
如果如你所说不可能出现,我想设计一个用例去证明。这个用例的设计能否不吝赐教?