code: final synchronized void invoke() {
          result = null;
          exception = null;
          try {
              result = call();
          } catch( Throwable e ) {
              exception = e;
          } finally {
          	done = true;
          }
  
          // let the calling thread know that we are done.
          notify();
      }
docs: Called from {@link ComThread} to run the task.