code: public ProfileReport stop()
    {
      if (! isValid()) {
        return null;
      }
      
      if (_state != StateProfile.ACTIVE) {
        return null;
      }
      
      _profileTask.stop();
      
      ProfileReport report = _profileTask.getReport();
      
      if (_backgroundPeriod > 0) {
        _profileTask.setPeriod(_backgroundPeriod);
        _profileTask.start();
        _state = StateProfile.BACKGROUND;
      }
      else {
        _state = StateProfile.IDLE;
      }
      
      return report;
    }
docs: Ends the dedicated profile, restarting the background.