第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

Android-Service系列之多線程斷點(diǎn)續(xù)傳下載

XRay_Chen 移動(dòng)開發(fā)工程師
難度中級(jí)
時(shí)長(zhǎng) 1小時(shí)32分
學(xué)習(xí)人數(shù)
綜合評(píng)分9.83
28人評(píng)價(jià) 查看評(píng)價(jià)
9.9 內(nèi)容實(shí)用
9.9 簡(jiǎn)潔易懂
9.7 邏輯清晰
文件路勁可以設(shè)置網(wǎng)絡(luò)路徑,學(xué)習(xí)了
視頻的目的就是提供一個(gè)思路,肯定存在著問題,但是你要是完全跟視頻的一樣,學(xué)習(xí)的意義就不大了
提點(diǎn)優(yōu)化吧,在分割每個(gè)線程下載長(zhǎng)度時(shí),最好使用Long型的,否則下載進(jìn)度會(huì)出現(xiàn)問題的
我想問一下 各位大神 那個(gè)發(fā)送下載進(jìn)度給activity mfinished是單個(gè)線程的完成度吧 應(yīng)該是傳過去所有線程的已經(jīng)下載的進(jìn)度吧 不解啊 這里
接上一條評(píng)論:

當(dāng)?shù)谝粋€(gè)線程執(zhí)行到行1,已進(jìn)入if內(nèi),但還沒有執(zhí)行行2時(shí),即sHelper依然為null,此時(shí)系統(tǒng)如果切換到第二個(gè)線程執(zhí)行,第二個(gè)線程依然能進(jìn)入if內(nèi),然后new一個(gè)并返回一個(gè)sHelper實(shí)例(假設(shè)內(nèi)存地址為0x000012)。然后系統(tǒng)切換回線程1,繼續(xù)在if內(nèi)向下執(zhí)行,此時(shí)它也會(huì)new一個(gè)實(shí)例(假設(shè)內(nèi)存地址為0x000023)并返回。這樣的話,各線程拿到的實(shí)例是不同的,在寫數(shù)據(jù)庫(kù)時(shí)依然會(huì)發(fā)生加鎖情況。

給方法加同步,或用雙重檢測(cè)可解決,不了解的同學(xué)建議看看單例模式的七種寫法(亦有說八種)及它們各自的優(yōu)缺點(diǎn)。
提醒下后來(lái)的同學(xué):

視頻中的單例模式是不安全的,不能保證只產(chǎn)生單例。
if(sHelper==null){ // 行1
sHelper = new DatabaseHelper(context); //行2
}
return sHelper; // 行3

已采納回答 / 小鵬不小
咳咳咳 ?這個(gè)可以看做是一個(gè)靜態(tài)內(nèi)部類,它呢不會(huì)持有外部類的應(yīng)用 ?老師這里應(yīng)該只是為了方便而已...在開發(fā)時(shí),提倡使用內(nèi)部類提倡這種...比如Handler ? 這樣不會(huì)造成內(nèi)存泄漏
那個(gè)getAllThread查詢沒問題是因?yàn)樵谌蝿?wù)開始之前執(zhí)行,不涉及多線程,不過那個(gè)isExists是在任務(wù)開始后執(zhí)行的,會(huì)出現(xiàn)查詢時(shí)Cursor被其他線程關(guān)閉的問題

最新回答 / 慕粉0946147077
再次下載下載進(jìn)度不對(duì),可能是數(shù)據(jù)庫(kù)里面的數(shù)據(jù)不對(duì)了,應(yīng)為下載進(jìn)度每次都是從數(shù)據(jù)庫(kù)里面獲取的,所以檢查一下數(shù)據(jù)庫(kù)讀寫操作這個(gè)流程看看是哪個(gè)步驟出問題了

最贊回答 / 天道酬勤_life
將InputStream換成BufferedInputStream,初始化bis=new BufferedInputStream(connection.getInputStream());? ?其余的不變
這個(gè)太好了,謝謝,早看到就好了。
這樣改getview代碼是不對(duì)的吧。?;瑒?dòng)一下數(shù)據(jù)就亂了
非常感謝老師!給你36個(gè)贊?。。?!
課程須知
適合有一定Android開發(fā)基礎(chǔ)的同學(xué),要求學(xué)生能夠有很強(qiáng)的java中多線程以及線程池的基礎(chǔ),靈活使用service和多線程結(jié)合實(shí)現(xiàn)斷點(diǎn)續(xù)傳功能。
老師告訴你能學(xué)到什么?
Activity和Service的通信方法 ListView和BaseAdapter的使用 數(shù)據(jù)庫(kù)操作 多線程分段下載的原理 線程池的使用 線程同步的應(yīng)用 單例模式的應(yīng)用 Notification的使用 Messenger的使用

微信掃碼,參與3人拼團(tuán)

微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

友情提示:

您好,此課程屬于遷移課程,您已購(gòu)買該課程,無(wú)需重復(fù)購(gòu)買,感謝您對(duì)慕課網(wǎng)的支持!

本次提問將花費(fèi)2個(gè)積分

你的積分不足,無(wú)法發(fā)表

為什么扣積分?

本次提問將花費(fèi)2個(gè)積分

繼續(xù)發(fā)表請(qǐng)點(diǎn)擊 "確定"

為什么扣積分?

舉報(bào)

0/150
提交
取消