我正在编写一个
Android应用程序,并使用工作线程来处理某些信息.通读了我的代码后,我现在不确定它是否是线程安全的.
我已经编写了我的代码的简化版本,我省略了用于与主线程进行通信的Handler对象,显然是进程本身.
public class myClass implements Runnable { private String myString; @Override public void run() { myString = "Some Value"; } }
通过运行类似于此的东西来调用它.
myClass class = new myClass(); Thread thread = new Thread(class); thread.start()
解决方法
就其本身而言,这是线程安全的.但哪些线程将读取myString值?如果在新线程中写入主线程后从主线程读取它,则不是线程安全的.