Python中的
如果是,那么它是否也是交错安全的?也就是说,如果多个(甚至数百个)回调写入控制台,我可以确定输出不会被破坏或交错吗?
查看源代码,似乎Node.js会将并发尝试写入流排队(这里)。另一方面,
请在回答这个问题时告诉我在 Node.js 中
编辑:如果同时向流中写入数据是可以的,那么为什么会有这个npm包存在?
print
语句不是线程安全的。在Node.js中同时使用console.log
是否安全?如果是,那么它是否也是交错安全的?也就是说,如果多个(甚至数百个)回调写入控制台,我可以确定输出不会被破坏或交错吗?
查看源代码,似乎Node.js会将并发尝试写入流排队(这里)。另一方面,
console.log
的替换标志来自printf(3)
。如果console.log
包装printf
,那么它可能会在POSIX机器上交错输出(如此示例所示)。请在回答这个问题时告诉我在 Node.js 中
async ._write(chunk, encoding, cb)
实现的位置。编辑:如果同时向流中写入数据是可以的,那么为什么会有这个npm包存在?