【发布时间】:2014-01-03 06:26:00
【问题描述】:
我正在处理一个包含在其他应用程序中的 jar 文件,它必须非常健壮。
在 jar 中,我有一个对象,比如 SomeView,它接受一个 Android 上下文,尝试创建一个 Handler 对象,并且会触摸视图,所以它需要从主线程初始化。我如何保证 100% 他们不会在错误的线程中初始化我的 SomeView?
如:
public class SomeView {
Handler mHandler;
public SomeView(Context context) {
mHandler = new Handler();
}
}
即构造函数中的if (Thread.currentThread().getId() != 1) failSafely(); 会起作用吗?
【问题讨论】:
-
@MTilsted 感谢您的发现。我还想知道,在我的特殊情况下,如果我只想检查线程 ID,而不是对象,它会更好。
标签: java android multithreading