999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

多線程技術(shù)在Android手機(jī)開發(fā)中的運用

2018-01-17 19:26:09謝光劉志惠
電子技術(shù)與軟件工程 2017年24期
關(guān)鍵詞:進(jìn)程

謝光+劉志惠

摘 要

在Android手機(jī)開發(fā)過程中,一般情況下程序是通過一個線程進(jìn)行工作的,因此當(dāng)一個任務(wù)耗費過長時間,就會造成主程序無響應(yīng)并對程序運行的順暢程度造成影響的問題。基于此,本文通過對多線程組成進(jìn)行介紹,在Android中多線程技術(shù)模塊與具體實現(xiàn)方式兩方面對多線程技術(shù)在安卓手機(jī)開發(fā)中的運用進(jìn)行探討,以為關(guān)注此問題的人們提供參考。

【關(guān)鍵詞】多線程技術(shù) Android手機(jī) 進(jìn)程 線程

安卓系統(tǒng)自2007年由谷歌公司開發(fā)后,得到了巨大的發(fā)展。截至2017年3月,其市場占有率已經(jīng)達(dá)到86.4%,如三星、索尼愛立信、小米、OPPO等手機(jī)生產(chǎn)廠商都在使用安卓系統(tǒng)。該系統(tǒng)開源免費、執(zhí)行效率高,其多線程技術(shù)開發(fā)應(yīng)用的研究,對提高手機(jī)硬件的利用效率,給用戶帶來良好試用體驗,提高手機(jī)廠商的企業(yè)競爭力有重要作用。

1 多線程介紹

1.1 進(jìn)程和線程介紹

一般來說,在一定時間內(nèi)實現(xiàn)多個程序任務(wù)執(zhí)行的程序都會用到“進(jìn)程”這一概念。進(jìn)程,即:一個擁有自身獨立的內(nèi)存空間、系統(tǒng)資源的執(zhí)行程序,其特征為實現(xiàn)內(nèi)部狀態(tài)和內(nèi)部數(shù)據(jù)的相互獨立。線程與進(jìn)程相似,線程也是一段有一定功能代碼組成的流控制。線程的特征為:同類的多個線程可以對內(nèi)存空間與系統(tǒng)資源進(jìn)行共享。因此在對資源的占用方面,可以相互切換的線程比進(jìn)程小很多。一個進(jìn)程中可以包含諸多線程,此外,主線程對子線程有控制作用,可對子線程啟動、停止等動作進(jìn)行管理。而本文要重點介紹的多線程,指的是單個程序中一起運行的不同線程,不同線程可以執(zhí)行不一樣的任務(wù)。其特征是一個程序的多行語句可在某時間同時執(zhí)行。

1.2 多線程程序消息處理原理

當(dāng)人們啟動一個程序時,系統(tǒng)將建立main線程,主要管理如:activity等應(yīng)用組件,并對UI相關(guān)的事件進(jìn)行處理,比如用戶想要按鍵或使用屏幕進(jìn)行繪圖,線程會對以上事件進(jìn)行處理,這是UI線程。安卓的線程模型,所有組件均在main線程中,因此用戶在程序中下達(dá)下載文件、使用數(shù)據(jù)庫等具有高耗時特征的操作時,就會造成UI線程的運行不暢,并出現(xiàn)程序無法響應(yīng)的問題。這就要求程序員使用多線程技術(shù),在進(jìn)行安卓多線程編寫時,技術(shù)人員應(yīng)注意以下兩點:

(1)UI線程不能被阻塞。

(2)只可以在UI線程的內(nèi)部進(jìn)行UI操作并使用工具包。

線程核心方法的實現(xiàn)通常用run方法,程序員將run方法中放入程序需要處理的事件,在線程被啟動時,通過調(diào)用run方法實現(xiàn)程序的執(zhí)行。

2 多線程技術(shù)在Android手機(jī)開發(fā)中的運用

2.1 Android開發(fā)中多線程結(jié)構(gòu)模塊

在判定一個系統(tǒng)是否成熟時,技術(shù)人員要關(guān)注一下幾點:運行的速度是否快速,響應(yīng)速度的快慢,安全性能的強(qiáng)弱等等。多線程的應(yīng)用,可以在較大程度上提高安卓系統(tǒng)的運行與相應(yīng)速度。安卓的多線程結(jié)構(gòu)模塊包含以下幾個方面:用于活動的結(jié)構(gòu)模塊,此模塊主要是通過視圖來顯示包含信息現(xiàn)實和用戶動作的反應(yīng)的圖形界面。二是用于服務(wù)的結(jié)構(gòu)模塊,此部分在進(jìn)行工作時,主要在程序后臺,在觸發(fā)事件時可通知程序進(jìn)行數(shù)據(jù)的更新。三是內(nèi)容、數(shù)據(jù)的提供部分,此板塊可以通過數(shù)據(jù)的管理,實現(xiàn)數(shù)據(jù)的共同使用,是一個大體積的數(shù)據(jù)存儲板塊。四是,此模塊通過程序的協(xié)調(diào)功能,對目標(biāo)活動提供所需要的信息,且具有意圖說明的功用。

在所有的程序模塊中,用于活動的結(jié)構(gòu)模塊是需要直接同用戶進(jìn)行交互的,這種功能主要是通過用戶界面得以實現(xiàn),用戶界面通過展示程序運行情況實現(xiàn)與用戶的直接交流。若安卓的使用程序中,由于單線程的使用造成程序無法響應(yīng)、程序運行速度過慢的問題,工作人員需要把應(yīng)用程序加載到新的線程中,以實現(xiàn)刷新主線的活動界面內(nèi)容,實現(xiàn)對整個活動界面的刷新。具體來說,用戶在下載文件時,若文件體積過大需要較多的下載時間,那么程序需要經(jīng)此任務(wù)調(diào)離主線程,并迅速開啟新的線程完成下載。即:用戶先是打開了主界面,然后輸入網(wǎng)址,在此之后系統(tǒng)就開始對文件下載,為保證系統(tǒng)運行速度,程序開啟一些子線程進(jìn)行下載工作,如下載完成,子線程也可以對主線程進(jìn)行消息報告,主線程在得到報告后,會再次刷新頁面。

2.2 安卓開發(fā)中的多線程實現(xiàn)方式

安卓開發(fā)中技術(shù)人員可以用兩種方法實現(xiàn)多線程:

一是對線程類Thread進(jìn)行繼承,二是實現(xiàn)Runnable接口。如要使用方式一,程序員可使用以下方式進(jìn)行編程:(1)對類Thread進(jìn)行繼承并重寫run()方法,技術(shù)人員在對類實例進(jìn)行初始化時,可將目標(biāo)設(shè)置為空(null),表示由本實例來進(jìn)行對線程體的執(zhí)行。由于Java只可以進(jìn)行單重繼承,因此如采用這種方法對類進(jìn)行定義,就不可以繼承其他的父類了。在main方法里,程序員可采用new textThread()進(jìn)行子線程的創(chuàng)建,并使用Thread.start()方法實現(xiàn)子線程的啟動。即:存在main方法的線程是主線程,并有對其他線程管理的作用。而程序員在啟動子線程后調(diào)用run()方法,run是一個線程體,子線程里面處理的事件都是在run()方法中實現(xiàn)的。需要注意的是:線程中stop()方法也可以完成線程的停止,但會鎖死線程,因此不建議采用。

實現(xiàn)多線程的另一種方法,就是通過實現(xiàn)runnable接口,并提供一個類為線程的目標(biāo)對象,在對線程進(jìn)行構(gòu)造時可以使用兩個包含Runnable目標(biāo)參數(shù)的建成方式,一是Thread(Runnable目標(biāo)),二是Thread(Runnable目標(biāo),String name)。其中的“目標(biāo)”就是線程目標(biāo)對象。這是一個實現(xiàn)Runnable的類,在程序員對目標(biāo)對象進(jìn)行構(gòu)造時,將目標(biāo)對象給這個線程的實例進(jìn)行傳遞,此時一方面目標(biāo)對象可以為Thread類提供run()方法;另一方面可以通過繼承其他父類的方式實現(xiàn)接口Runnable類。這種方法有一個轉(zhuǎn)換方式,即:程序員不實現(xiàn)Runnable接口而是實例化Thread類時,對Runnable接口的內(nèi)部類進(jìn)行定義。

3 結(jié)論

綜上所述,程序員通過使用多線程技術(shù)可以加快程序的相應(yīng)與運行速度。通過分析可得,程序員使用main做主線程并調(diào)用run()方法,實現(xiàn)runnable接口等方式可以實現(xiàn)多線程技術(shù)。因此,程序員應(yīng)采用以上辦法在安卓手機(jī)開發(fā)中運用多線程技術(shù)。

參考文獻(xiàn)

[1]閆偉,葉建栲.多線程技術(shù)在android手機(jī)開發(fā)中的應(yīng)用[J].信息通信,2012(01):46-47.

[2]李鑫,廖正赟.多線程技術(shù)在Android手機(jī)開發(fā)中的運用[J].通訊世界,2016(10):105.

作者簡介

謝光(1983-),男,山東省單縣人,現(xiàn)供職于三亞學(xué)院,講師、碩士學(xué)位。研究方向為數(shù)據(jù)庫技術(shù)軟件工程。

作者單位

三亞學(xué)院 海南省三亞市 572000endprint

猜你喜歡
進(jìn)程
債券市場對外開放的進(jìn)程與展望
中國外匯(2019年20期)2019-11-25 09:54:58
改革開放進(jìn)程中的國際收支統(tǒng)計
中國外匯(2019年8期)2019-07-13 06:01:06
快速殺掉頑固進(jìn)程
社會進(jìn)程中的新聞學(xué)探尋
我國高等教育改革進(jìn)程與反思
Linux僵死進(jìn)程的產(chǎn)生與避免
講效率 結(jié)束進(jìn)程要批量
電腦迷(2012年24期)2012-04-29 00:44:03
男女平等進(jìn)程中出現(xiàn)的新矛盾和新問題
俄羅斯現(xiàn)代化進(jìn)程的阻礙
論文萊的民族獨立進(jìn)程
主站蜘蛛池模板: 日本午夜影院| 91精品国产丝袜| 99久久国产综合精品2020| 国产网友愉拍精品| 久久久91人妻无码精品蜜桃HD| 成年人视频一区二区| 中文毛片无遮挡播放免费| 亚洲第一成年网| 亚洲一区二区三区国产精品| 国产免费网址| 亚洲国产清纯| 日本欧美午夜| 搞黄网站免费观看| 中文字幕在线不卡视频| 国产色爱av资源综合区| 国产成人久久综合777777麻豆| 人妻丝袜无码视频| 亚洲国产天堂久久综合226114| 波多野结衣一区二区三区AV| 欧洲极品无码一区二区三区| 国产极品嫩模在线观看91| 国产91无码福利在线| 最新国产在线| 国产一级裸网站| 成人国产精品网站在线看| 操美女免费网站| 大陆国产精品视频| 特黄日韩免费一区二区三区| 欧美日韩导航| 黄片一区二区三区| 天堂av综合网| 国产区免费| 亚洲成人网在线播放| 午夜限制老子影院888| 国产免费福利网站| 国产网友愉拍精品视频| 亚洲精品卡2卡3卡4卡5卡区| 亚洲免费毛片| 中文无码伦av中文字幕| 美女国内精品自产拍在线播放| 亚洲资源站av无码网址| 国产人免费人成免费视频| 久久久久青草大香线综合精品| 亚洲综合狠狠| 华人在线亚洲欧美精品| 色综合狠狠操| 欧美精品综合视频一区二区| 99精品热视频这里只有精品7| 免费人成网站在线观看欧美| 成人精品视频一区二区在线| 久久精品中文字幕少妇| 亚洲av无码久久无遮挡| 中文字幕在线视频免费| 亚洲人成影视在线观看| 久久一日本道色综合久久| 9丨情侣偷在线精品国产| 亚洲欧美一级一级a| 国产97公开成人免费视频| 一级福利视频| 国产亚洲精品自在久久不卡| 天天色天天操综合网| 青青久视频| 亚洲综合久久一本伊一区| 无码丝袜人妻| 91小视频在线观看| 国产鲁鲁视频在线观看| 久久久久久国产精品mv| 日本在线欧美在线| 国产色爱av资源综合区| 日本一区二区三区精品国产| 国产aⅴ无码专区亚洲av综合网| 国产国产人在线成免费视频狼人色| 亚洲一区二区在线无码| 狠狠做深爱婷婷久久一区| 萌白酱国产一区二区| 色综合a怡红院怡红院首页| 欧美一级片在线| 国产亚洲欧美在线专区| 五月天天天色| 国产精品自拍合集| 乱系列中文字幕在线视频| 免费一级无码在线网站|