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