我有一個Android中的線程之間同步的問題。Android - 在活動中訪問變量(使用同步)
什麼我是:
2線程從活動催生,並且每個該線程在活動同時訪問的字段。
什麼我想到的是使用同步,如
synchronize private void functionA()
或
synchronize(mContext){
....
}
(其中mContext是活動的上下文中)
但我不知道這是否將真正起作用。
還是有沒有人有更好的想法?
謝謝。
我有一個Android中的線程之間同步的問題。Android - 在活動中訪問變量(使用同步)
什麼我是:
2線程從活動催生,並且每個該線程在活動同時訪問的字段。
什麼我想到的是使用同步,如
synchronize private void functionA()
或
synchronize(mContext){
....
}
(其中mContext是活動的上下文中)
但我不知道這是否將真正起作用。
還是有沒有人有更好的想法?
謝謝。
這裏是一個很好的例子 - 你讓私有變量,然後創建同步的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
同步可以做到這一點,並使線程同步。
哇非常感謝 – 2011-04-14 22:59:08