2011-06-15 57 views
1

我有一個使用Grails Quartz插件的應用程序。我需要兩個作業才能運行多個實例,但對每個作業要使用的線程數量有單獨的限制。據我所知,我需要單獨的線程池,這可以通過單獨的調度程序。但是,我無法弄清楚如何用Quartz插件創建多個調度器。多個調度程序與Grails Quartz插件

+0

當你的意思是運行多個實例,你說的是使用不同的觸發啓動作業多次? – 2011-06-15 19:43:22

+0

是的,我提到的兩個工作是同時觸發多次。 – Orhan 2011-06-16 22:59:07

回答

1

假設您想使用不同的觸發器多次啓動作業。這對我有用。

class MyJob { 

    static triggers = { 
     cron name: 'trigger1', cronExpression: "0 30 12 ? * WED" 
     cron name: 'trigger2', cronExpression: "0 30 12 ? * SAT" 
    } 

    def execute() { 

     // execute task, do your thing here 
     println "Job executed" 
    } 
} 

最後關於併發任務。 這是從插件頁面:

默認工作在並行的方式執行,所以新的工作 執行即使同一作業的先前執行的 仍在運行啓動。

0

石英插件2.0.13

根據官方documentation

每個作業多個觸發器是允許的。

例如,

class MyJob { 
 
    static triggers = { 
 
    simple name:'simpleTrigger', startDelay:10000, repeatInterval: 30000, repeatCount: 10 
 
    cron name:'cronTrigger', startDelay:10000, cronExpression: '0/6 * 15 * * ?' 
 
    custom name:'customTrigger', triggerClass:MyTriggerClass, myParam:myValue, myAnotherParam:myAnotherValue 
 
    }