private synchronized void pauseTrackDataHub(){
  if (trackDataHub != null) {
    trackDataHub.unregisterTrackDataListener(this);
  }
  trackDataHub=null;
}

private synchronized void pauseTrackDataHub ( ) { if ( trackDataHub != null ) { trackDataHub . unregisterTrackDataListener ( this ) ; } trackDataHub = null ; }
pauses the trackdatahub . needs to be synchronized because the trackdatahub can be accessed by multiple threads .
