public static DateTime GetEndTime(int timeout) { if (timeout == -1) { return(DateTime.MaxValue); } return(UtilityComputingHelper.GetEndTime(TimeSpan.FromMilliseconds((double)timeout))); }
public static int GetRemainingTimeMilliseconds(DateTime endTime) { TimeSpan remainingTime = UtilityComputingHelper.GetRemainingTime(endTime); if (remainingTime == UtilityComputingHelper.InfiniteTimeoutTimeSpan) { return(-1); } return((int)remainingTime.TotalMilliseconds); }
public static int GetRemainingTimeOrThrow(DateTime endTime) { int remainingTimeMilliseconds = UtilityComputingHelper.GetRemainingTimeMilliseconds(endTime); if (remainingTimeMilliseconds == 0) { if ((DateTime.UtcNow - endTime).TotalSeconds > UtilityComputingHelper.TimeoutAlertThresholdInSeconds.TotalSeconds) { lock (UtilityComputingHelper.s_alertSyncObject) { UtilityComputingHelper.s_timoutCountSinceLastAlert++; } } throw new TimeoutException(); } return(remainingTimeMilliseconds); }