InfiniteTask from function to property

This commit is contained in:
Dominion
2023-06-05 21:26:41 -04:00
parent bab9d81aa0
commit cca2e4a9b7
4 changed files with 8 additions and 9 deletions
@@ -854,7 +854,7 @@ namespace Tgstation.Server.Host.Components.Watchdog
var heartbeatSeconds = ActiveLaunchParameters.HeartbeatSeconds.Value;
var heartbeat = heartbeatSeconds == 0
|| !controller.DMApiAvailable
? Extensions.TaskExtensions.InfiniteTask()
? Extensions.TaskExtensions.InfiniteTask
: Task.Delay(
TimeSpan.FromSeconds(heartbeatSeconds),
cancellationToken);
@@ -14,6 +14,11 @@ namespace Tgstation.Server.Host.Extensions
/// </summary>
static readonly TaskCompletionSource InfiniteTaskCompletionSource = new ();
/// <summary>
/// Gets a <see cref="Task"/> that never completes.
/// </summary>
public static Task InfiniteTask => InfiniteTaskCompletionSource.Task;
/// <summary>
/// Create a <see cref="Task"/> that can be awaited while respecting a given <paramref name="cancellationToken"/>.
/// </summary>
@@ -53,11 +58,5 @@ namespace Tgstation.Server.Host.Extensions
return await task;
}
/// <summary>
/// Creates a <see cref="Task"/> that never completes.
/// </summary>
/// <returns>A never ending <see cref="Task"/>.</returns>
public static Task InfiniteTask() => InfiniteTaskCompletionSource.Task;
}
}
+1 -1
View File
@@ -271,7 +271,7 @@ namespace Tgstation.Server.Host.Jobs
}
if (noMoreJobsShouldStart && !handler.Started)
await Extensions.TaskExtensions.InfiniteTask().WithToken(cancellationToken);
await Extensions.TaskExtensions.InfiniteTask.WithToken(cancellationToken);
Task cancelTask = null;
using (jobCancellationToken.Register(() => cancelTask = CancelJob(job, canceller, true, cancellationToken)))
@@ -380,7 +380,7 @@ namespace Tgstation.Server.Host.Swarm
? asyncDelayer.Delay(
TimeSpan.FromMinutes(UpdateCommitTimeoutMinutes),
cancellationToken)
: Extensions.TaskExtensions.InfiniteTask().WithToken(cancellationToken);
: Extensions.TaskExtensions.InfiniteTask.WithToken(cancellationToken);
var commitTask = Task.WhenAny(commitTcsTask, timeoutTask);