2

我得到了一个 SensorEventListener,它在 onSensorChanged() 方法中执行如下操作:

public void onSensorChanged(SensorEvent e){
   values = e.values.clone();
   handleEvent(); //do some computations
}

其中 values 是一个类变量,将在 handleEvent() 方法中访问它以进行一些计算。我现在的问题是我是否必须锁定变量值,即当其他线程在handleEvent() 中时,值是否可以被另一个调用onSensorChanged() 的线程覆盖?

提前感谢您的帮助!

4

1 回答 1

2

OnSensorChanged 在 UI-Thread 内部被调用,因此如果您values在 ui-thread 之外的另一个线程中访问,您需要同步或使用其他技术,例如队列。

于 2012-04-25T20:15:26.620 回答