title: Is the try-catch-finally block synchronous in node.js?
body: <p>I have some code runing in a <strong>child process</strong> in a node program like so:</p>
  
  <pre><code>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");
  </code></pre>
  
  <p>This code is called from another node program, that needs to <strong>wait until all the operations in this file are done</strong>.  Unfortunately, the child process is exiting with code 0 before any of the code under the <code>finally</code> block is executed.  </p>
  
  <p>This is leading me to believe even the <code>try-catch-finally</code> is asynchronous.  Is that correct?</p>