zoukankan      html  css  js  c++  java
  • ABP文档

    文档目录

    本节内容:

    简介

    Quartz 是一个功能完整的开源工作调度系统,可用于最小的应用到一个大型的企业系统.Abp.Quartz 包简单地把Quartz集成到ABP中.

    ABP已经内置后持久化的台作业和工作者,如果你有更高的调度上的需求,Quzrtz是一个好的选择,同样Hangfire 也是一个好的关于持久化后台工作的队列的选择.

    安装

    Abp.Quartz  nuget包安装到你的项目里,然后在你的模块上为AbpQuartzModule添加一个DependsOn 特性:

    [DependsOn(typeof (AbpQuartzModule))]
    public class YourModule : AbpModule
    {
        //...
    }

    创建工作

    为创建一个新的工作,你要么实现Quartz的IJob接口,或从JobBase类继承(定义在Abp.Quartz包里),JobBase有些帮助性的属性和方法(例如:日志和本地化),一个简单的Job类如下所示:

    public class MyLogJob : JobBase, ITransientDependency
    {
        public override void Execute(IJobExecutionContext context)
        {
            Logger.Info("Executed MyLogJob :)");
        }
    }

    我们通过记录日志,简单地实现Execute方法,更多信息可以查看Quartz文档.

    调度工作

    IQuartzScheduleJobManager 来调度工作,把可以把它注入到你的类里(或者在你的模块的PostInitialize方法里解析它的实例然后使用它)来调度工作.举个用控制器调度一个工作的例子:

    public class HomeController : AbpController
    {
        private readonly IQuartzScheduleJobManager _jobManager;
    
        public HomeController(IQuartzScheduleJobManager jobManager)
        {
            _jobManager = jobManager;
        }
            
        public async Task<ActionResult> ScheduleJob()
        {
            await _jobManager.ScheduleAsync<MyLogJob>(
                job =>
                {
                    job.WithIdentity("MyLogJobIdentity", "MyGroup")
                        .WithDescription("A job to simply write logs.");
                },
                trigger =>
                {
                    trigger.StartNow()
                        .WithSimpleSchedule(schedule =>
                        {
                            schedule.RepeatForever()
                                .WithIntervalInSeconds(5)
                                .Build();
                        });
                });
    
            return Content("OK, scheduled!");
        }
    }   

    更多

    关于Quartz更多内容,请查看它的文档

      

    英文原文

  • 相关阅读:
    交换实验
    路由引入和控制
    ISIS
    BGP联盟
    BGP2
    bgp
    Linux日常总结
    配置本地yum源方法
    达梦数据库常见问题-安装
    达梦数据库常见问题-安装
  • 原文地址:https://www.cnblogs.com/kid1412/p/6419214.html
Copyright © 2011-2022 走看看