在满足特定条件之前,每 2 分钟重复一次代码活动的最佳方法是什么?
假设我有以下代码活动来检查数据库以查看一批报告是否已完成。
public sealed class CheckReportsAreComplete : CodeActivity
{
public InArgument<int> ReportBatchId{ get; set; }
public OutArgument<bool> HaveReportsCompleted{ get; set; }
protected override void Execute(CodeActivityContext context)
{
bool haveCompleted = ReportService.HaveReportsCompleted((context.GetValue(this.ReportBatchId));
HaveReportsCompleted.Set(context, haveCompleted);
}
}
我需要此代码活动每 2 分钟运行一次,并在 OutArgument HaveReportsCompleted 设置为 true 时继续处理。我应该只在代码中使用 Timer.Sleep 还是这是不好的做法?
我假设我需要一段时间/一段时间与延迟和条件的组合?