我有3个并行运行的任务。在第一个任务中,我使用下划线方法循环遍历数组(例如_.each)。这种下划线方法会阻止其他两项任务吗?如果是这样,在node.js中使用下划线模块不是一个坏主意吗?
答案 0 :(得分:2)
是的,它会阻止。不,它与使用下划线无关。
Javascript是单线程的。当你注册一堆事件处理程序或setTimeouts时,它们不会并行运行 - 每个运行直到它返回到事件循环,然后另一个从事件队列中拉出并执行。
如果您的数组非常庞大,并且需要对每个元素进行大量的同步工作,那么您可能希望在事件循环的多个回合中拆分工作。但是,如果它相当小,那么它可能无关紧要。
这与下划线无关,这只是Javascript的本质。