2011-06-03 102 views
9

如何每五分鐘定義運行作業如何每隔五分鐘確定要運行的作業

在play.jobs.every類

,它定義例如每(「1H」),以每小時運行工作,我想每5分鐘運行一次,如何定義這個。

我嘗試每個(「5m」)或每個(「0.1h」),播放報告內部錯誤。

回答

5

嘗試在你的註釋使用 「5分鐘」,而不是:

@Every("5min") 
19

簡短的回答:

您可以使用以下

@Every("5mn") 
@Every("5min") 


龍回答:

@Every註釋使用play.libs.Time類,特別是用於確定作業排定的頻率的parseDuration方法。

如果你看看源代碼,Javadoc中說明......

/** 
    * Parse a duration 
    * @param duration 3h, 2mn, 7s 
    * @return The number of seconds 
    */ 

這表明,如果你更深入的代碼,你應該指定代碼@Every("5mn")

,它決定通過使用以下正則表達式,時間在幾分鐘內。

"^([0-9]+)mi?n$" 

所以,這說下面的任一有效

@Every("5mn") 
@Every("5min") 
相關問題