nodejs回调代码是同步的

时间:2015-05-26 19:52:53

标签: javascript node.js multithreading

我正在学习nodejs prons和cons来制作我的新项目。有人怀疑我还不清楚,即同步或线程安全中的回调函数内的代码?

我知道nodejs正在使用单线程并在回调函数内的其他进程中执行切换执行。但是,如果第一个回调请求需要时间而第二个请求带有不同的数据,那么它会造成破坏吗?

如果它的线程安全意味着每次在回调函数中创建新线程?

1 个答案:

答案 0 :(得分:1)

您不必担心javascript代码中的线程安全性和类似问题。所有javascript都在主线程上执行。实际上,几乎所有节点中的操作都发生在同一个主线程上(除了在libuv中使用线程池的DNS和文件I / O等少量任务,但这些任务都通过队列发回主线程)从主线程到达事件循环结束时读取。)

但是,竞争条件等其他问题可能在技术上仍然会出现在javascript中,但根据我的经验并不常见。