《Java并发编程实战》——线程安全性

什么是线程安全性?

13页:当多个线程访问某个类时,这个类始终都能表现出正确的行为,那么就称这个类是线程安全的。

哪些做法保证线程安全性?

使用线程安全对象(例如AcomicLong)、加锁机制

保证线程安全性需要注意哪些?

同步机制中,变量的访问都要加同步,包括变量的读取。

22页:如果用同步来协调对某个变量的访问,那么在访问这个变量的所有位置上都需要使用同步。一种常见的错误是认为,只有在写入共享变量时才需要使用同步,然而事实并非如此。

尽量减少锁的数量。

22页:每个共享的和可变的变量都应该只由一个锁来保护,从而使维护人员知道是哪一个锁。

提高并发效率。

24页:应该尽量将不影响共享状态且执行时间较长的操作从同步代码块中分离出去,从而在这些操作的执行过程中,其他线程可以访问共享状态。

26页:当执行时间较长的计算或者可能无法快速完成的操作时(例如,网络I/O或控制台I/O),一定不要尺有锁。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值