synchronized()怎么理解呢

jerrygj 2011-06-13 10:55:44
例如:
synchronized(SurfaceHolder)
{
Draw();//画图
}
怎么理解呢,请帮我解释下上面代码的意思吧,谢谢
...全文
181 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
CyberLogix 2011-06-13
  • 打赏
  • 举报
回复
这个关键字保证多线程同步访问下面的代码段
fontlose 2011-06-13
  • 打赏
  • 举报
回复
同2楼 别的线程使用
synchronized(SurfaceHolder)
{
做其他。。
}
也会先获取SurfaceHolder锁之后才能做其他
easycoola 2011-06-13
  • 打赏
  • 举报
回复
同步代码块
ameyume 2011-06-13
  • 打赏
  • 举报
回复
在同一个时间点只能有一个线程执行synchronzied区域的代码,即只能由一个线程来执行画图操作
Draw();//画图
lazy_2010 2011-06-13
  • 打赏
  • 举报
回复
个人理解,相当于 SurfaceHolder 对象有一个临界区(或者可以 lock 的对象)

synchronzied (A) 表示 进入 A 的临界区(lock),执行 Draw 之后,退出 A 的临界区(unlock)
念茜 2011-06-13
  • 打赏
  • 举报
回复
锁的引进是为了避免多个线程同时对一段区域进行冲突的读写操作,导致的错误
jerrygj 2011-06-13
  • 打赏
  • 举报
回复
csdn真是太好了,这么多人回答,而且这么精彩,看来我的好好赚分,也多奉献大家

80,362

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧