PCDVD數位科技討論區
PCDVD數位科技討論區   註冊 常見問題 標記討論區為已讀

回到   PCDVD數位科技討論區 > 其他群組 > 七嘴八舌異言堂
帳戶
密碼
 

回應
 
主題工具
公不
*停權中*
 

加入日期: Dec 2010
文章: 341
Question [?程式設計問題]請問Multi Thread問題

請問ANdroid 的 Multi Thread問題

我有一個Object

這個Object裡面有很多SubObject

而SubObject又有很多SubSubObject

這些SubObject都要使用Object設置的command來詢問取得

而這個command本身繼承了 Asynctask達成了

所以可以算是一個Thread

我的問題是

我已經用command問到了Object有多少的SubObject

然後要更新UI

但是為了利用時間

所以更新時

要用command再去問有多少SubSubObject

如果直接在UI更新後面

接著寫 {用command再去問有多少SubSubObject}

就會讓UI更新比較慢

(看起來讓UI的主Thread分工去做的關係)

所以就想說

那用
new Thread(new Runnable(){
@Override
public void run() {
}
}).start();

來動作好了

結果

因為有很多的SubObject

所以需要用到for迴圈

然後每一個SubObject就會去觸發一個新的command

因此這樣就會導致CRASH

看LOG是說 Thread無法產生handler

請問我該如何寫?

謝謝
     
      
舊 2014-11-29, 01:03 AM #1
回應時引用此文章
公不離線中  
anderson1127
Elite Member
 

加入日期: Jan 2002
文章: 4,032
我先聲明,我只懂得multi-thread的運作原理,不懂android Multi Thread (programming)

看起來,樓主的使用方式,很像是把process 當做thread , 因此當memory resource不是很足的情況下
因此而Crash ,是嗎??

所謂的command 我猜是OS本身的可執行程式(指令) , 是嗎??
 
__________________
您想買新硬碟嗎? 購買前請務必參考這篇文章,是我的實際經驗

還想讓統一賺你的錢嗎?統一集團成員(能見度高的):
星巴克、家樂福、7-11、無印良品、黑貓宅急便、聖娜多堡、阪急百貨、
康是美、博客來、夢時代、Mister Donut 、Cold Stone 、龜甲萬、
維力33%股權、光泉31%股權、Smile速邁樂、紅心辣椒、台北轉運站(統一企業BOT)

統一LP33膠囊有環保署早已列管的一級管制品: DNOP塑化劑
舊 2014-11-29, 06:11 PM #2
回應時引用此文章
anderson1127離線中  
789w
Major Member
 
789w的大頭照
 

加入日期: Mar 2011
文章: 108
建議你回學校重唸OS
__________________
舊 2014-11-29, 06:59 PM #3
回應時引用此文章
789w離線中  
blin1115
Basic Member
 

加入日期: Apr 2005
文章: 16
看起來是兩個 thread..
thread(A) 與 thread(B)
A 是 main/UI thread
B 是用來跑 "問有幾個 subsubObj."

嗯..
會不會是 "command詢問" 的問題..
它沒辦法及時完成(回答有幾個?)..
要不要用 sendMessage 的方式來問有幾個 subsubObj?
這樣比較婉轉...

再不然就先把 for loop 拿掉..
看看只跑一個 "SubObject就會去觸發一個新的command" 會不會 crash..
一點意見, 參考看看..
舊 2014-11-29, 07:14 PM #4
回應時引用此文章
blin1115離線中  
space
Junior Member
 

加入日期: Apr 2003
文章: 751
http://www.itkee.com/developer/detail-340a.html

因為沒看到程式碼,所以不知道是不是一樣的問題,可參考看看上面的網頁

網頁最後有一段總結:
因爲在Android中不能在子綫程中來刷新UI綫程,而可以在子綫程中添加hander來發送消息更新綫程。
舊 2014-11-29, 07:50 PM #5
回應時引用此文章
space離線中  


回應


POPIN
主題工具

發表文章規則
不可以發起新主題
不可以回應主題
不可以上傳附加檔案
不可以編輯您的文章

vB 代碼打開
[IMG]代碼打開
HTML代碼關閉



所有的時間均為GMT +8。 現在的時間是05:49 PM.


vBulletin Version 3.0.1
powered_by_vbulletin 2025。