av激情亚洲男人的天堂国语,日韩欧美精品一中文字幕,无码av一区二区三区无码,国产又色又爽又刺激的a片,国产又色又爽又刺激的a片

GUI程序與Swing中的線(xiàn)程

Swing中的線(xiàn)程

成都創(chuàng)新互聯(lián)從2013年開(kāi)始,公司以成都網(wǎng)站制作、成都做網(wǎng)站、系統(tǒng)開(kāi)發(fā)、網(wǎng)絡(luò)推廣、文化傳媒、企業(yè)宣傳、平面廣告設(shè)計(jì)等為主要業(yè)務(wù),適用行業(yè)近百種。服務(wù)企業(yè)客戶(hù)1000多家,涉及國(guó)內(nèi)多個(gè)省份客戶(hù)。擁有多年網(wǎng)站建設(shè)開(kāi)發(fā)經(jīng)驗(yàn)。為企業(yè)提供專(zhuān)業(yè)的網(wǎng)站建設(shè)、創(chuàng)意設(shè)計(jì)、宣傳推廣等服務(wù)。 通過(guò)專(zhuān)業(yè)的設(shè)計(jì)、獨(dú)特的風(fēng)格,為不同客戶(hù)提供各種風(fēng)格的特色服務(wù)。

Swing作為一個(gè)完整的UI解決方案,包含了一個(gè)GUI程序所擁有的方方面面,當(dāng)然包括作為普通程序也好,作為GUI程序也好,作為Web程序等等程序都共有的線(xiàn)程概念。

Swing中的線(xiàn)程有三種:初始線(xiàn)程,事件線(xiàn)程,工作線(xiàn)程

這三種線(xiàn)程基本上包括了讓一個(gè)GUI完美工作的方方面面,首先,初始線(xiàn)程被用來(lái)創(chuàng)建GUI組件、資源加載和啟動(dòng)GUI組件,眾所周知,Swing是事件驅(qū)動(dòng)的,所以當(dāng)UI出現(xiàn)了之后,初始線(xiàn)程就完成了它的使命,并將接力棒交給了事件線(xiàn)程,Event Dispatch Thread,這個(gè)時(shí)候所有組件的事件行為都交給了這個(gè)線(xiàn)程去處理,當(dāng)然我們自己也要需要用線(xiàn)程來(lái)運(yùn)行許多任務(wù),優(yōu)秀的GUI程序是絕不能讓界面被卡死不動(dòng)的,那會(huì)讓用戶(hù)崩潰,所以這個(gè)時(shí)候就需要工作線(xiàn)程了,也可以說(shuō)是在背后運(yùn)行的線(xiàn)程,這種線(xiàn)程是勞動(dòng)階級(jí),任勞任怨的執(zhí)行者長(zhǎng)時(shí)間的工作。

初始線(xiàn)程的寫(xiě)法很簡(jiǎn)單,這樣就可以了:

 
 
 
  1. SwingUtilities.invokeLater(new Runnable() {  
  2.     public void run() {  
  3.         initGUI();  
  4.         showGUI();  
  5.     }  

但是Applet中,你可能需要調(diào)用SwingUtilities.invokeAndWait這個(gè)方法,要是init方法返回了,瀏覽器開(kāi)始展現(xiàn)Applet,但是GUI的創(chuàng)建還在thread中,出錯(cuò)也是可想而知的。
至于invokeLater和invokeAndWait這兩個(gè)線(xiàn)程的簡(jiǎn)單點(diǎn)的區(qū)別就是invokeLater是異步的,你不知道它什么時(shí)候會(huì)開(kāi)始執(zhí)行,invokeAndWait則是同步的,它會(huì)等到動(dòng)作執(zhí)行完成之后才返回。

Event Dispatch Thread不是線(xiàn)程安全的,所以要用線(xiàn)程來(lái)與它打交道要注意了,同步問(wèn)題總是讓人頭痛。

在1.5之前應(yīng)該說(shuō)工作線(xiàn)程都是由開(kāi)發(fā)人員自己去定義的,但是現(xiàn)在Swing推薦了SwingWorker這個(gè)類(lèi),包括Swing最新的符合JSR標(biāo)準(zhǔn)的Swing AppFramework也使用了SwingWorker這個(gè)類(lèi)來(lái)處理所有在GUI背后做的事情。

了解了Swing中的線(xiàn)程定義,能夠讓我們更好的寫(xiě)出優(yōu)美的基于Swing的GUI程序。

【編輯推薦】

  1. 不同Swing線(xiàn)程的模型設(shè)計(jì)
  2. AWT和Swing的可訪(fǎng)問(wèn)性
  3. Swing組件也是AWT的一部分
  4. 淺析iData技術(shù)與Swing關(guān)系
  5. 命令行輸入改變Swing程序外觀(guān)

網(wǎng)頁(yè)名稱(chēng):GUI程序與Swing中的線(xiàn)程
本文來(lái)源:http://uogjgqi.cn/article/djdeojh.html
掃二維碼與項(xiàng)目經(jīng)理溝通

我們?cè)谖⑿派?4小時(shí)期待你的聲音

解答本文疑問(wèn)/技術(shù)咨詢(xún)/運(yùn)營(yíng)咨詢(xún)/技術(shù)建議/互聯(lián)網(wǎng)交流