每个人都建议在Node.js中使用异步(非阻塞)函数而不是同步函数。
那么,如果不推荐使用node.js中的同步函数,那该怎么办?
例如:如果fs.readFileSync()
可以在不阻止的情况下执行相同的工作,为什么要使用fs.readFile()
?
答案 0 :(得分:8)
同步功能非常有用,尤其是在启动时,您希望在执行更多代码之前确保获得结果。
例如,您可以同步加载配置文件。但是,如果您在实时请求期间尝试读取文件,则应使用异步功能,以免阻止其他用户请求。
答案 1 :(得分:0)
有时您希望在读取或写入文件后执行代码。例如
function () {
array.forEach(function(data) {
fs.writeFile(data)
});
// do this after forEach has finished looping, not after files have finished being writen to
}
如同:
function () {
array.forEach(function(data) {
fs.writeFileSync(data)
});
// do this after all files have been written to
}