in src/Serilog.Sinks.AzureDataExplorer/Durable/PortableTimer.cs [54:74]
public void Start(TimeSpan interval)
{
if (interval < TimeSpan.Zero) throw new ArgumentOutOfRangeException(nameof(interval));
lock (m_stateLock)
{
if (m_disposed)
throw new ObjectDisposedException(nameof(PortableTimer));
#if THREADING_TIMER
_timer.Change(interval, Timeout.InfiniteTimeSpan);
#else
Task.Delay(interval, m_cancel.Token)
.ContinueWith(
_ => OnTick(),
CancellationToken.None,
TaskContinuationOptions.DenyChildAttach,
TaskScheduler.Default);
#endif
}
}