2012-04-11 64 views
1

執行。例如一個,我有兩個任務:JBoss 5計劃後臺任務。接連打破了日程

<mbean code="org.jboss.varia.scheduler.Scheduler" name=":service=Scheduler"> 
    <attribute name="StartAtStartup">true</attribute> 
    <attribute name="SchedulableClass">Scheduler1</attribute> 
    <attribute name="InitialStartDate">NOW</attribute> 
    <attribute name="SchedulePeriod">60</attribute> 
    <attribute name="InitialRepetitions">-1</attribute> 
    <attribute name="FixedRate">false</attribute> 
    </mbean> 

    <mbean code="org.jboss.varia.scheduler.Scheduler" name=":service=Scheduler2"> 
    <attribute name="StartAtStartup">true</attribute> 
    <attribute name="SchedulableClass">Scheduler2</attribute> 
    <attribute name="InitialStartDate">NOW</attribute> 
    <attribute name="SchedulePeriod">3600</attribute> 
    <attribute name="InitialRepetitions">-1</attribute> 
    <attribute name="FixedRate">false</attribute> 
    </mbean> 

即第一個是每分鐘預定一個,第二個是每個小時。

問題是,如果執行第二個任務需要5分鐘,那麼在這段時間內第一個任務不會執行,並且會等到第二個任務完成。

有沒有辦法讓他們並行工作?或者我應該轉移到Quartz或其他東西?

回答

0

使用

<attribute name="TimerName">jboss:service=TimerNew</attribute> 

它將parralel開始接種。

+0

那麼只需將這個節點添加到兩個?或者像jboss:service = TimerNew1,jboss:service = TimerNew2等? – 2012-04-11 20:30:43

+0

使用帶聯合而成的像用戶:服務= MyTimer,名字=任務1 <屬性名= 「TimerName」>用戶:服務= MyTimer,名字=任務1和用戶:服務= MyTimer,名字=任務2 <屬性名稱=「計時器名稱」>用戶:服務= MyTimer,名稱=任務2參考[併發調度程序任務](https://community.jboss.org/message/588965) – Shehzad 2012-04-11 20:41:50