<PackageReference Include="System.ServiceModel.Primitives" Version="8.1.0" />

System.Runtime.IOThreadTimer

public IOThreadTimer(Func<object, Task> asyncCallback, object callbackState, bool isTypicallyCanceledShortlyAfterBeingSet)

public IOThreadTimer(Action<object> callback, object callbackState, bool isTypicallyCanceledShortlyAfterBeingSet)

public IOThreadTimer(Action<object> callback, Func<object, Task> asyncCallback, object callbackState, bool isTypicallyCanceledShortlyAfterBeingSet, int maxSkewInMilliseconds)

public bool Cancel()

protected void Reinitialize(Action<object> callback, object callbackState)

public void Set(TimeSpan timeFromNow)

public void Set(int millisecondsFromNow)

public void SetAt(long dueTime)