2011-04-14 73 views
0

我有一個Android中的線程之間同步的問題。Android - 在活動中訪問變量(使用同步)

什麼我是:

2線程從活動催生,並且每個該線程在活動同時訪問的字段。

什麼我想到的是使用同步,如

synchronize private void functionA() 

synchronize(mContext){ 
.... 
} 

(其中mContext是活動的上下文中)

但我不知道這是否將真正起作用。

還是有沒有人有更好的想法?

謝謝。

回答

1

這裏是一個很好的例子 - 你讓私有變量,然後創建同步的getter和setter函數:

class Account { 
    private double balance;    // make variable private 

    // write synchronized accessor methods 
    public synchronized void setBalance(double b) { 
     balance = b; 
    } 

    public synchronized double getBalance() { 
     return balance; 
    } 

    // modify update method to use accessor methods 
    synchronized void updateBalance(double amount) { 
    // double b = getBalance(); 
     setBalance(getBalance() + amount); 
    } 
} 

來源:http://www.janeg.ca/scjp/threads/synchronized.html

這裏是另一個例子,這次使用的ArrayList: http://www.vogella.de/articles/JavaConcurrency/article.html#concurrencyjava_synchronized

+0

哇非常感謝 – 2011-04-14 22:59:08

0

同步可以做到這一點,並使線程同步。