Javascript 我可以在deno中异步多次写入文件吗?

Javascript 我可以在deno中异步多次写入文件吗?,javascript,asynchronous,deno,Javascript,Asynchronous,Deno,nodejs文档对此问题作了如下说明: 在同一个文件上多次使用fs.write()而不等待回调是不安全的。对于此场景,建议使用fs.createWriteStream() 现在,我在deno文档中找不到任何关于它的信息,我想知道deno是否也建议不要在同一个文件上进行短频率的多次写入,或者他们是否因为生锈而对其进行了不同的处理。 如果他们提出了反对意见,建议用什么方法来解决这个问题 谢谢大家! Asyncwrite不等待承诺完成对deno来说也是不安全的 对于实际演示: // If safe t

nodejs文档对此问题作了如下说明:

在同一个文件上多次使用fs.write()而不等待回调是不安全的。对于此场景,建议使用fs.createWriteStream()

现在,我在deno文档中找不到任何关于它的信息,我想知道deno是否也建议不要在同一个文件上进行短频率的多次写入,或者他们是否因为生锈而对其进行了不同的处理。 如果他们提出了反对意见,建议用什么方法来解决这个问题


谢谢大家!

Async
write
不等待承诺完成对deno来说也是不安全的

对于实际演示:

// If safe the file content would be ABCDEFGHIJ
async function main() {
  let n = new Uint8Array(1);
  const file = await Deno.open("bar.txt", { write: true, create: true });
  for (var i = 65; i < 75; i++) {
    n[0] = i;

    Deno.write(file.rid, n);
  }
}

main();
//如果安全,文件内容将是ABCDEFGHIJ
异步函数main(){
设n=新的UINT8阵列(1);
const file=wait Deno.open(“bar.txt”,{write:true,create:true});
对于(变量i=65;i<75;i++){
n[0]=i;
Deno.write(file.rid,n);
}
}
main();
在我的linux机器上,
bar.txt
内容不是
ABCDEFGHIJ
而是'JJ'

请注意,此特定示例实际上显示了两个问题:

  • 使用
    Deno.write
    而不使用
    wait
  • write()
    调用之间共享相同的最后一个
    i
    循环变量值
    J