我想知道哪個是最有效的方法來實現java中的某種背景任務(我猜這會是某種非阻塞的線程)。更確切地說 - 我有一些java代碼,然後在某個時候我需要執行一個長時間運行的操作。我想要做的是在後臺執行該操作,以便該程序的其餘部分可以繼續執行,並在該任務完成時只更新某個特定的對象。這個改變會被其他組件檢測到。java後臺任務
Q
java後臺任務
5
A
回答
2
-1
天真的想法:你也許可以創建線程,給它一個低優先級,並做一個循環:
- 使用產量或睡眠讓其他線程做的工作
- 一點點在parrallel工作
這將取決於你真正想要在你的線程做
6
你想使一個新的線程;根據該方法需要多久是,你可以把它內聯:
// some code
new Thread(new Runnable() {
@Override public void run() {
// do stuff in this thread
}
}).start();
或者只是做一個新的類:
public class MyWorker extends Thread {
public void run() {
// do stuff in this thread
}
}
// some code
new MyWorker().start();
-1
是的,你會想離旋轉操作在它自己的線程上。如果您不小心並且意識到這意味着什麼以及資源如何相互作用,那麼添加新線程可能會有點危險。這是一個很好的introduction to threads來幫助你開始。
0
讓一個線程。將該線程標記爲守護進程。當運行的唯一線程都是守護進程線程時,JVM退出。
相關問題
- 1. linux:kill後臺任務
- 2. nodejs後臺任務
- 3. UWP後臺任務
- 4. Phonegap後臺任務
- 5. GearMan後臺任務
- 6. Windows Phone 8.1後臺任務無法註冊後臺任務
- 7. iPhone:重複後臺任務
- 8. Rails後臺任務開銷
- 9. 後臺任務和活動
- 10. mergExt支持後臺任務
- 11. NSRunLoop後臺任務有效
- 12. UWP中的後臺任務
- 13. 註銷uwp後臺任務
- 14. 後臺任務中的net_http_client_execution_error
- 15. ASP/VBS - 後臺任務
- 16. UWP後臺任務錯誤
- 17. Rails 3.2後臺任務
- 18. 停止後臺任務
- 19. UWP後臺任務取消
- 20. Powershell中的後臺任務?
- 21. Android - 高頻後臺任務
- 22. IntentService用於後臺任務
- 23. 後臺任務不啓動
- 24. iOS上的後臺任務
- 25. System.UnauthorizedAccessException的在後臺任務
- 26. 3分鐘後停止後臺任務
- 27. Visual Studio錯誤:「無法激活後臺任務,後臺任務激活失敗。」
- 28. 具有後臺任務的Android服務
- 29. java ee後臺服務
- 30. 當值改變時開始後臺任務java
是的,這是我正在尋找的,更具體的執行者,..謝謝。 – markovuksanovic 2010-05-10 20:23:41
你可以提出一個關於執行者的回答嗎?我正要問一個非常類似的問題。我認爲應該提及執行者作爲具體答案。我會給它一個upvote。我不想回答點竊取。 特別是因爲JEE不鼓勵新線程的產生。 – Wes 2010-07-31 14:04:34