ABP 如何创建 BackgroundWorker (后台作业)

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();
原文地址:https://www.cnblogs.com/fxck/p/13076696.html