title: Best way to handle exception when joining a thread
body: <p>For some reason I am confused over the following:<br>
  Assume that I have <code>Thread A</code> that <em>absolutely</em> needs to execute after <code>Thread B</code> has completed its processing.<br>
  A way to do this would be by <code>Thread A</code> joining <code>Thread B</code>.<br>
  Trivial example:  </p>
  
  <pre><code>public class MainThread {  
      public static void main(String[] args){   
          Thread b = new Thread (new SomeRunnable(args[0]));  
          b.start();  
          try {   
              b.join();   
          } catch(InteruptedException e) {  
          }  
          // Go on with processing  
      }
  }
  </code></pre>
  
  <p>My question is the following: What is the proper way to handle the exception in such a case?</p>
  
  <p>In various example I have seen, even in text-books, the exception is ignored.<br>
  So if <code>Thread A</code> needs to be sure that <code>Thread B</code> is completely finished before proceding, if I end up in the catch due to an exception, can it be the case that <code>Thread B</code> may still actually be runnable/running? So what is the best way to handle this exception?</p>