国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Andriod Service與Thread的區別介紹

2019-12-12 03:02:14
字體:
來源:轉載
供稿:網友

首先,我們需要明確Service是運行在主線程的,不能有耗時操作,這樣,在Service中處理耗時操作的時候,我們依然需要使用線程來處理。

既然在Service里也要創建一個子線程,那為什么不直接在Activity里創建呢?

這是因為Activity很難對Thread進行控制,當Activity被銷毀之后,就沒有任何其它的辦法可以再重新獲取到之前創建的子線程的實例。而且在一個Activity中創建的子線程,另一個Activity無法對其進行操作。但是Service就不同了,所有的Activity都可以與Service進行關聯,然后可以很方便地操作其中的方法,即使Activity被銷毀了,之后只要重新與Service建立關聯,就又能夠獲取到原有的Service中Binder的實例。因此,使用Service來處理后臺任務,Activity就可以放心地finish,完全不需要擔心無法對后臺任務進行控制的情況。

標準Service的寫法:

@Overridepublic int onStartCommand(Intent intent, int flags, int startId) {new Thread(new Runnable() {@Overridepublic void run() {// 開始執行后臺任務}}).start();return super.onStartCommand(intent, flags, startId);}class MyBinder extends Binder {public void startDownload() {new Thread(new Runnable() {@Overridepublic void run() {// 執行具體的下載任務}}).start();}}

 以上所述是小編給大家介紹的Andriod Service與Thread的區別介紹,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 望谟县| 宁远县| 长兴县| 嘉荫县| 昌江| 浏阳市| 忻州市| 章丘市| 清远市| 克东县| 九龙县| 托克托县| 黄冈市| 泽州县| 巴彦淖尔市| 宝兴县| 阿荣旗| 花莲市| 浦县| 比如县| 云南省| 措美县| 社旗县| 临猗县| 左权县| 诸城市| 兰坪| 平湖市| 鄂伦春自治旗| 乌拉特前旗| 承德市| 思茅市| 定边县| 安岳县| 太和县| 顺平县| 白银市| 分宜县| 布拖县| 洱源县| 务川|