我想學習如何線程類(特別是類中的方法),我碰到過Thread()
和SwingWorker()
。這是一個swing應用程序。我應該選擇哪一個?爲什麼?另外,是否有一些通用的方法來將線程添加到現有方法中?Java線程 - 鞦韆應用程序
感謝
我想學習如何線程類(特別是類中的方法),我碰到過Thread()
和SwingWorker()
。這是一個swing應用程序。我應該選擇哪一個?爲什麼?另外,是否有一些通用的方法來將線程添加到現有方法中?Java線程 - 鞦韆應用程序
感謝
SwingWorker的,主要是爲了的Java Swing執行的後臺進程是指基於UI的應用程序,就像在UI按下一個按鈕,你想一些長期的過程在後臺發生。 線程通常用於Java程序中的多任務處理,例如在某種時間內執行兩個操作。 線程可以從Runnable接口實現,也可以從Thread類繼承。 檢查Oracle Java Docs。
使用Swingworkers可能會使您喜歡更容易,因爲它的目的是做的正是你所需要的。 Oracle網站上有一個很好的tutorial,可以幫助您開始。 從本質上講,在一個Swing應用程序,你需要確保:
Swingworkers處理這兩件事非常好。
類Thread
是您需要創建線程的基本部分。 JDK提供任一「低電平」 API(採取Thread類,接口可運行,synchoronized關鍵字,方法wait()
,notify()
一看)或更高級別的API(的SwingWorker,定時器,執行人框架)。
網上有很多教程。先學習基礎知識。閱讀Thread的javadoc,找到一些例子,和他們一起玩。然後通過Timer和SwingWorker。這將是簡單的。然後,當你瞭解它是如何工作的時候,花點時間研究執行者,線程池等。
快樂線程!
這兩個類的javadoc說什麼?你的結論是什麼? – 2012-03-12 17:46:21