2016-09-27 125 views
-1

在彈簧啓動Web應用程序中,我需要能夠執行兩項任務。連續任務等待並暫停

任務

  1. 串行端口經常檢查是否有一些數據讀取。有人可以通過掃描卡。我認爲這個任務需要從應用程序開始。

  2. 如果新成員來了,我需要掃描一張卡片,任務1需要被暫停/停止......如果卡片沒有被分配給任何人,它被分配給這個成員。重新啓動任務1.

我不知道什麼是做任務1,方便任務2

我看到有很多可能性的最佳方式:@ScheduledTaskScheduler誰將會執行一個線程。 ..

有什麼建議嗎?

回答

1

您應該創建一個線程,從循環中的串口讀取數據,並在某些有用的事件發送給適當的服務時將這些數據作爲事件分派。

+0

沒問題,但並沒有真正回答問題......這是肯定的任務將調用服務來做到這一點... 重要思考是如何調用任務1以及如何將任務2放入暫停任務2 –

+0

如果線程將直接調用某個服務方法,它將不會回讀任何非服務方法將返回的內容,請問這是好的嗎? –

+0

好的,我會給更多的信息。 任務1,讀取串行端口,如果掃描一張卡片,則將值發送到檢查數據庫中的服務層是否分配了標識... 任務2,如果新用戶來了,則將卡片給予用戶,卡片ID是未知的,所以用戶必須先掃描它才能將其分配給他。當用戶傳遞卡片時,我不想讓任務1運行......這是兩種不同的情況。 –