java 并发编程(一)之synchronized


对“共享资源”的访问为了保证正确性,引入了“临界区”的概念(critical section)

对于“临界区”的访问java通常使用synchronized和锁进行。

对于“临界区”的访问策略是,当线程A要访问“临界区”时会先进行判断,如果该“临界区”中有其他的线程存在,那么线程A将休眠等待获得访问许可。

java中,被synchronized修饰的对象将是线程安全的,换句话说:

java类中被synchronized修饰的方法都是该对象的“临界区”,在同一时刻只能有一个线程访问。需要注意的是:

获得锁的线程可以迭代调用其他加锁的的方法

静态方法是特殊的,即没有获得锁的线程也可以访问已经被占用的对象的静态方法,这需要注意

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值