synchronized和Lock的区别,说法错误的是()
B.Lock可以给类、方法、代码块加锁;而synchronized只能给代码块加锁
C.synchronized不需要手动获取锁和释放锁,使用简单,发生异常会自动释放锁,不会造成死锁;而Lock需要自己加锁和释放锁,如果使用不当没有unLock去释放锁就会造成死锁
D.通过Lock可以知道有没有成功获取锁,而synchronized却无法办到
B.Lock可以给类、方法、代码块加锁;而synchronized只能给代码块加锁
C.synchronized不需要手动获取锁和释放锁,使用简单,发生异常会自动释放锁,不会造成死锁;而Lock需要自己加锁和释放锁,如果使用不当没有unLock去释放锁就会造成死锁
D.通过Lock可以知道有没有成功获取锁,而synchronized却无法办到
第2题
A.ConcurrentHashMap是线程安全的HashMap的实现
B.HashMap的线程安全是依靠Synchronized实现的,ConcurrentHashMap的线程安全是使用Lock实现的
C.ConcurrentHashMap对整个桶数组进行了分割分段(Segment),然后在每一个分段上都用lock锁进行保护
D.HashMap的键值对允许有null,但是ConCurrentHashMap都不允许
第3题
A.Lock不能完成synchronized所实现的所有功能
B.synchronized会自动释放锁
C.Lock一定要求程序员手工释放,并且必须在finally从句中释放
D.Lock有比synchronized更精确的线程语义和更好的性能
第4题
A.synchronized作用于方法或代码块
B.synchronized任何对象都可以作为同步监视器
C.synchronized可以灵活地对Lock锁进行操作
D.Lock锁显式获取和释放
为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!