当我在 AsyncTask#doInBackground 中使用 Android 上下文时,它是线程安全的吗?上下文是通过构造函数或通过周围 Activity 的 getApplicationContext() 提供的。这个简单的问题在 stackoverflow 和其他地方被问了很多,但我发现没有一个明确的答案?
例如,在 doInBackground() 中,我使用上下文来实例化一个 DAO 类。
@Override
protected Void doInBackground(Void... params) {
ExampleDao dao = new ExampleDao(context);
...
}
我看到了几个这样做的例子,但我无法想象这是线程安全的,因为上下文现在由主线程(UI 线程)和工作线程访问。