21.3 共享受限的资源

21.3.1 不正确的访问

当有两个或更多的任务竞争响应某个条件,产生冲突或不一致结果

21.3.2 解决共享资源竞争


java提供了关键字synchronize来保护代码片段,当任务要执行被synchronize关键字保护的代码片段的时候,它将检查锁是否可用,然后获取锁,执行代码,释放锁。

当在对象上调用器任意synchronize方法时候,此对象都被加锁,这时对象上的其他synchronize方法只有等前一个方法调用完毕并释放锁之后才能被调用。


使用并发是,将域设置为private是非常重要的,否则,synchronize关键字就不能防止其他任务直接访问域,就会产生冲突。


一个任务可以多次获得对象的锁。


2.解决的方法是显示的Lock对象

private Lock lock=new ReentranLock();


  lock.lock();

 lock.unlock();

在lock与unlock之间创建了临界资源,使用lock对象是,



阅读更多
个人分类: Java编程思想
想对作者说点什么? 我来说一句

UltraEdit 21.3 最新 绿色版 破解版

2014年12月13日 20.09MB 下载

资源受限设备开发要点提示

2011年03月17日 2KB 下载

没有更多推荐了,返回首页

不良信息举报

21.3 共享受限的资源

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭