TaffyDb和nodejs中是否存在竞争条件? 例如: 使用require('net')与node.js建立100个并发连接 可靠的数据读取依赖于变量Dbman(示例)锁定:在未被读取时为0,在读取时为1。如果在设置锁定之前调用了2个读取,那么数据是否可以读取并因此被破坏?
答案 0 :(得分:1)
Node.js程序是JavaScript程序,因此没有多线程。
每个函数都从SINGLE调度循环线程运行,因此如果将变量设置为特定值,则可以保证在整个函数调用执行期间保持该值。
当执行单个功能时,没有其他功能可以运行,因此您正在考虑的竞争条件是不可能的。