为什么不能在其它线程中直接修改UI线程上的控件属性?

什么是线程安全?... 什么是线程安全? 展开
 我来答
xmcong2000
2014-12-07 · TA获得超过3471个赞
知道大有可为答主
回答量:1919
采纳率:0%
帮助的人:1291万
展开全部
你好
很高兴为你解答

答案是:简单的说,如果多个线程都可以直接修改同一个控件的属性,很容易造成混乱,造成读写不一致,操作系统中介绍过PV操作的,你应该明白其中的道理。所以,Android只允许将对控件的修改操作提交给控件所在的线程,由该线程去执行实际的修改动作。

满意请采纳,谢谢
00逗你玩儿00
推荐于2016-05-04 · 超过34用户采纳过TA的回答
知道答主
回答量:89
采纳率:0%
帮助的人:73.8万
展开全部
线程安全就是多线程访问时,采用了加锁机制,当一个线程访问该类的某个数据时,进行保护,其他线程不能进行访问直到该线程读取完,其他线程才可使用。不会出现数据不一致或者数据污染。

可以在Thread中向Handler发送消息,Handler的处理则在View中,Handler会判断消息类型,并根据消息类型更新View。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式