استفاده از عبارات Cron در Quartz.NET
نویسنده: سیروان عفیفی
تاریخ: ۱۳۹۲/۰۴/۰۸ ۸:۱۰
آدرس: www.dntips.ir
| مطالب | ۳۶۹۴ |
| نویسندگان | ۲۷۶ |
| گروههای مطالب | ۱۰۲۴ |
| نقشههای راه | ۱۱۹ |
| دورهها | ۱۴ |
| اشتراکها | ۱۷۹۱۴ |
در حقیقت رشته هایی هستند که از هفت قسمت تشکیل شده اند که هر قسمت مشخص کننده اعمال مربوط به زمانبندی میباشد مثلا انجام اعمالی :
این هفت قسمت توسط فاصله از همدیگر جدا میشوند :
عبارات cron خیلی قدرتمتد هستند و در عین حال مقداری پیچیده، هدف از ارائه این مطلب آشنایی با این نوع از عبارات و استفاده از آنها در Quartz.NET میباشد.
قبل از هر چیز ایتدا باید با فرمت این عبارات آشنا شویم :
* * * * ? *
0/5 14,18,3-39,52 * ? JAN,MAR,SEP MON-FRI 2002-2010
تعدای مثال :
تولید عبارات cron گاهی اوقات به نظر پیچیده میآید(به نظر من که اینطور نیست!) اما برای تولید آسان این عبارات میتوانید از این سرویس آنلاین استفاده نمائید.
حال یک مثال در این رابطه :
می خواهیم یک کار را هر شب ساعت 11 شب برای انجام زمانبندی کنیم:
public class HelloSchedule : ISchedule
{
public void Run()
{
IJobDetail job = JobBuilder.Create<HelloJob>()
.WithIdentity("job1")
.Build();
ITrigger trigger = TriggerBuilder.Create()
.ForJob(job)
.WithIdentity("trigger1")
.StartNow()
.WithCronSchedule("0 0 23 ? * MON-FRI *")
.Build();
ISchedulerFactory sf = new StdSchedulerFactory();
IScheduler sc = sf.GetScheduler();
sc.ScheduleJob(job, trigger);
sc.Start();
}