[問題] Android 連Socket問題

作者: llzzyy01 (我是清流)   2014-06-21 22:58:05
Android 4之後的版本如果要連Socket
要另外設一個thread去連,我也是這麼做
不過連好之後 主要的thread如何去取得資料?
例如我要用 readInt 和readUTF抓資料
我是在那個thread裡面設一個getInt()
在裡面寫tempInt=this.dis.readInt();
最後再return tempInt
所以主thread呼叫getInt() 就可以達到readInt的功能
我的作法是對的嗎?
不過我好像遇到一個問題
就是主thread呼叫getInt() 後再呼叫getUTF
會不會因為是不同thread的關系,所以連線的那個thread會先readUTF再readInt
因為我好像遇到這樣的狀況
多跑几次時,其中有几次readInt會得到奇怪的數字
我在猜可能是thread 其實先readUTF 所以才抓到怪數字
如果問題真的是這樣,要如何避免呢?
為避免說明不清 連結是我那個連線的thread的code
https://gist.github.com/anonymous/f5a6d8c906e17b3b9c72
作者: Deltaguita (貝里斯)   2014-06-21 23:14:00
observer listener hanlder
作者: janice001 (真理)   2014-06-23 02:34:00
我是讓他們共用一個dataCenter去存取
作者: erttyy8821 (俠)   2014-06-25 11:12:00
Handler

Links booklink

Contact Us: admin [ a t ] ucptt.com