// Check for timeout
if (timeout > 0 && !isJobFinished()) {
if ((tNow - tStart) > timeout ) {
// timeout has occurred
throw new GridTimeoutException("Timeout, Result Not Available");
}
else {
// notified before timeout, update timeout
timeout -= (tNow - tStart);
}