【发布时间】:2013-07-08 11:28:49
【问题描述】:
我有一些代码在一个节点程序的子进程中运行,如下所示:
try{
var data = fs.readFileSync(urlPath, {"encoding":"utf8"});
} catch (err) {
console.log("Error reading url file...");
throw err;
} finally {
console.log("File read!");
var array = data.split("\n");
console.log("Found " + array.length + " urls");
这段代码是从另一个节点程序调用的,它需要等到这个文件中的所有操作都完成。不幸的是,在执行finally 块下的任何代码之前,子进程以代码0 退出。
这让我相信即使try-catch-finally 也是异步的。对吗?
【问题讨论】:
-
这真的没有意义。
-
也许我应该提出一个新问题,我刚刚在别处添加了一些日志记录语句,看来子进程正在退出,甚至没有运行这些语句。
-
@MattBall 请参考这个问题:stackoverflow.com/questions/17572834/…
标签: node.js asynchronous try-catch child-process