code: public final synchronized void waitFor() {
          if (this.thread == null)
              return;
  
          synchronized (this.thread) {
              if (this.thread == null)
                  return;
  
              try {
                  this.thread.wait();
              } catch (InterruptedException e) {
                  // Wir sind raus.
              }
          }
      }
docs: Kann verwendet werden, um den Aufrufer-Thread solange zu pausieren,
  bis "stop()" aufgerufen wurde. Damit kann warten, bis die Uebertragung
  abgeschlossen ist.