我创建了一个类,我希望它的方法只能从一个特定的线程调用,例如,ui线程。 这与android网络api发生的情况完全相反......它从ui-thread调用时会引发异常。 我怎么能在android中做到这一点? thanx强制从UI线程调用类方法
1
A
回答
-3
那么,你甚至可以在你的课堂上做到这一点。 只是,获取调用者活动的上下文。在该方法中,请执行context.runOnUIThread()
1
将此代码放入您的类方法中。
if(!"UI thread".equals(Thread.currentThread().getName())){
throw new IllegalStateException("wrong thread running this class, thread name:"+Thread.currentThread().getName());
}
+0
!该代码看起来非常有前途 –
0
此行为是MFC是如何工作的:
一个MFC窗口类有许多方法不执行什么是从他们预期的,相反他们发送或发布消息队列的GUI /主线程侦听。
因此,您需要使用现有的跨线程消息机制或创建自己的。
相关问题
- 1. 从AsyncTask调用UI线程方法
- 2. 强制从线程调用的方法返回,如果线程本身退出
- 3. Android:从AsyncTask调用UI线程上的方法doInBackground方法
- 4. 在UI线程中调用parseNetworkResponse方法
- 5. 强制调用UIViewController的子类方法
- 6. Android是否只强制从UI线程执行UI操作?
- 7. 从UI线程运行的Fragment中调用Activity方法吗?
- 8. 方法getText()必须从UI调用线程
- 9. 是否有可能调用从UI线程Thread类的网络的方法?
- 10. 调用线程中的类的方法
- 11. 从单独的线程调用UI方法,但不参考UI控件
- 12. 从主线程函数调用方法
- 13. 如何从新线程调用方法
- 14. 从线程中调用invalidate方法
- 15. 从异步回调方法与UI线程交互?
- 16. android studio“插入应用程序”方法gettext必须从UI线程调用
- 17. 如何阻止UI线程从另一个线程或强制一个窗体在UI线程内运行
- 18. 在Silverlight中从BeginGetResponse调用UI线程
- 19. 如何从非UI线程调用Snackbar.make()?
- 20. AysncTask - 从主UI调用线程
- 21. 从辅助线程使用主线程的调用方法
- 22. 线程内调用方法
- 23. 强制调用专门的方法
- 24. 如何在使用TPL时在UI线程上调用方法?
- 25. 使用另一个线程调用的方法同步UI线程
- 26. 可以从线程调用返回类型列表的方法
- 27. 从我的异步线程调用活动类中的方法
- 28. Android子线程调用主线程UI
- 29. 针对线程安全调用的目标UI线程控制
- 30. 线程的强制结束停留在一些方法的API调用
Thanx,但我的意思是强制呼叫者在ui线程,并抛出一个例外,否则... thanx! –