我明白了:
internal void Start(CancellationToken token)
{
while (!token.IsCancellationRequested)
{
//do work
token.WaitHandle.WaitOne(TimeSpan.FromSeconds(67));
}
}
因此,我在新的任务
中启动了这个方法,并在循环中执行一些工作,直到我需要使用token
取消它为止。有时,我需要强制进行新的循环迭代,而无需等待这67秒。我认为我需要类似以下内容的东西:
public ManualResetEvent ForceLoopIteration { get; set; }
同时,我不太明白如何使用它与令牌一起。也许像
WaitHandle.WaitAny()
这样的方式?