private static ITaskSeriesTimer CreateUpdateMessageVisibilityTimer(IStorageQueue queue, IStorageQueueMessage message, TimeSpan visibilityTimeout, IBackgroundExceptionDispatcher backgroundExceptionDispatcher) { // Update a message's visibility when it is halfway to expiring. TimeSpan normalUpdateInterval = new TimeSpan(visibilityTimeout.Ticks / 2); IDelayStrategy speedupStrategy = new LinearSpeedupStrategy(normalUpdateInterval, TimeSpan.FromMinutes(1)); ITaskSeriesCommand command = new UpdateQueueMessageVisibilityCommand(queue, message, visibilityTimeout, speedupStrategy); return(new TaskSeriesTimer(command, backgroundExceptionDispatcher, Task.Delay(normalUpdateInterval))); }
private ITaskSeriesTimer CreateUpdateMessageVisibilityTimer(IStorageQueue queue, IStorageQueueMessage message, TimeSpan visibilityTimeout, IWebJobsExceptionHandler exceptionHandler) { // Update a message's visibility when it is halfway to expiring. TimeSpan normalUpdateInterval = new TimeSpan(visibilityTimeout.Ticks / 2); IDelayStrategy speedupStrategy = new LinearSpeedupStrategy(normalUpdateInterval, MinimumVisibilityRenewalInterval); ITaskSeriesCommand command = new UpdateQueueMessageVisibilityCommand(queue, message, visibilityTimeout, speedupStrategy); return(new TaskSeriesTimer(command, exceptionHandler, Task.Delay(normalUpdateInterval))); }
private static ITaskSeriesTimer CreateUpdateMessageVisibilityTimer(IStorageQueue queue, IStorageQueueMessage message, TimeSpan visibilityTimeout, IBackgroundExceptionDispatcher backgroundExceptionDispatcher) { // Update a message's visibility when it is halfway to expiring. TimeSpan normalUpdateInterval = new TimeSpan(visibilityTimeout.Ticks / 2); IDelayStrategy speedupStrategy = new LinearSpeedupStrategy(normalUpdateInterval, TimeSpan.FromMinutes(1)); ITaskSeriesCommand command = new UpdateQueueMessageVisibilityCommand(queue, message, visibilityTimeout, speedupStrategy); return new TaskSeriesTimer(command, backgroundExceptionDispatcher, Task.Delay(normalUpdateInterval)); }