code: public String waitForMe() throws InvalidProperty, RuntimeFault, RemoteException {
  
          Object[] result = waitForValues(
              new String[]{"info.state", "info.error"},
              new String[]{"state"},
              new Object[][]{new Object[]{TaskInfoState.success, TaskInfoState.error}});
  
          if (result[0].equals(TaskInfoState.success)) {
              return SUCCESS;
          }
          else {
              TaskInfo tinfo = (TaskInfo) getCurrentProperty(PROPNAME_INFO);
              LocalizedMethodFault fault = tinfo.getError();
              String error = "Error Occured";
              if (fault != null) {
                  MethodFault mf = fault.getFault();
                  throw mf;
              }
              return error;
          }
      }
docs: If there is another thread or client calling waitForUpdate(), the behavior of this
  method is not predictable. This usually happens with VI Client plug-in which shares
  the session with the VI Client which use waitForUpdate() extensively.
  The safer way is to poll the related info.state and check its value.
  
  @return
  @throws InvalidProperty
  @throws RuntimeFault
  @throws RemoteException
  @deprecated