0

我有一个内存中的 node/js 对象,我将它备份到磁盘(我正在使用 JSON),目前使用 fs.writeFile()。

如果这种情况经常发生,如何确保多个文件写入不会交错,从而破坏数据?我在文档中没有看到任何暗示 fs.writeFile 对文件进行独占访问的内容。我知道我可以使用同步版本,但这反而违背了重点。

我对node.js还是很陌生,所以如果这是一个愚蠢的问题,或者之前已经回答过(我确实搜索过),请原谅我。

感激地收到提示或链接。

谢谢。

4

1 回答 1

0

就像在任何其他环境中一样,您必须手动同步它们,只有您的应用程序知道何时可以交错等的“逻辑”。

在其他环境中,如果您尝试同步线程,您可能会使用锁/信号量。在节点中,在不了解您的应用程序的任何其他信息的情况下,我想我会选择一个队列:每次您想专门向文件写入某些内容时,将该内容排入队列,并有一个出列和写入的“工作人员”。

于 2013-09-12T16:48:56.203 回答