2010-07-12 167 views
1

我編寫了解如何以及如何執行以下操作。從WebApp啓動和停止線程

我有一個用於管理的WebApp,我應該在其中添加一個按鈕(或類似的東西)來啓動和停止Java線程(此線程在數據庫上進行輪詢,發送電子郵件等)。 其目的是使用戶能夠管理這個線程的生命,決定是否保持它活着的時候,永遠活着,停止,等等....

的邏輯是:

  1. 如果你點擊「開始」,線程運行,如果還沒有一個實例在運行;
  2. 如果你點擊「停止」,停止它。

正在運行的實例必須是唯一的,以便不同的用戶(組管理員)不會啓動多個線程。

問題1.這是應該做什麼?
問題2我不明白是否有可能檢索已經運行的線程實例。
問題3.是否可以給線程一個「名稱」?

我在谷歌搜索,但沒有發現任何東西,也許是因爲我看起來不好。

非常感謝。

+0

謝謝您的建議。 是的,很多編輯... 這三個問題是相關的;但是,請你只能回答q.2嗎? 再見 – sangi 2010-07-21 00:32:04

回答

0

第一個問題,我不能回答,因爲它聽起來更像是一個陳述;)

第二個是:好了,除非你放棄參考線實例(通過寫新的主題,即() .start();)您將可以在任何給定時間調用該線程實例上的方法。如果你放棄引用(你不應該),那麼你可以嘗試在當前線程的ThreadGroup中找到它(Thread.currentThread()。getThreadGroup())。

第三個問題的答案:是的,你可以命名一個線程。 線程namedThread = new Thread(「myPetThread」);