我有一个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