1.創建 xxxWorker 作業類,並繼承 Abp.Threading.BackgroundWorkers.PeriodicBackgroundWorkerBase 基類,與 Abp.Dependency.ISingletonDependency 接口
2.申明構造函數。注意:下面的的 Timer 是父類中的,不是構造函數上的 timer 參數。
public xxxWorker(AbpTimer timer) : base(timer)
{
Timer.Period = 600000;//10分鐘一次輪詢
}
3.重寫父類的 DoWork 方法。在方法體中實現作業具體邏輯。
protected override void DoWork()
{
//在這裏實現具體邏輯
}
4.啓動任務。理論上可以在任何地方啓動,也可以參照官方文檔在 public override void PostInitialize() 中處理。
var workManager = IocManager.Resolve<IBackgroundWorkerManager>();
workManager.Add(IocManager.Resolve<xxxWorker>());
workManager.Start();