Table of Contents

Method TryFireRecurringAsync

Namespace
Millrace.Storage.SqlServer
Assembly
Millrace.Storage.SqlServer.dll

TryFireRecurringAsync(string, DateTimeOffset, DateTimeOffset, JobRecord, CancellationToken)

Fenced fire (§4.2.5, strengthened): compare-and-set on (id, expectedFireTime) advancing NextFireTime to nextFireTime and setting LastFireTime = expected, inserting job in the same atomic operation iff the CAS wins. Returns whether this caller won — exactly one node enqueues each occurrence, with no crash window between fence and enqueue.

public ValueTask<bool> TryFireRecurringAsync(string id, DateTimeOffset expectedFireTime, DateTimeOffset nextFireTime, JobRecord job, CancellationToken ct)

Parameters

id string
expectedFireTime DateTimeOffset
nextFireTime DateTimeOffset
job JobRecord
ct CancellationToken

Returns

ValueTask<bool>