课程几个地方理解不了

来源:3-4 线程安全性-可见性

无道8

2019-05-19

老师能解答下么
1 程序设计在某些情况下更简单,是些什么情况了?
图片描述

2 volatile 为什么读操作不可以先行发生于写操作?
图片描述

3 这句话 好绕口 没理解到意思
图片描述

写回答

1回答

Jimin

2019-05-20

1、这里说有些,自然就是不明确的,如果是明确,就可以直接给出来了。想你学习了这么久,应该也能明白,涉及到使用场景的,都需要根据场景分析,而且可能某一个因素就会对整个方案造成影响。这里的含义,并发这么多关键字,用在很多场景都会让一些问题解决变得容易,你想想课程里那些关键字就可以了,比如要保证同一时刻只有一个线程去更新可以直接使用synchronized
2、那样才能保证可见性,否则每次写之前不读,那可见性就只是说说而已了
3、如果代码里能捕获线程里的中断,那么必须是有线程执行过interupt方法,否则不会捕捉到这个异常

0
2
无道8
第二点老师说的意思我能理解 但是对这个表述还是有疑问 volatile变量规则:对一个变量的写操作先行发生于对后面这个变量的读操作 感觉这个表述更好 volatile变量规则:对一个变量的读操作先行发生于对后面这个变量的写操作
2019-05-20
共2条回复

Java高并发编程,构建并发知识体系,提升面试成功率

构建完整并发与高并发知识体系,倍增高薪面试成功率!

3923 学习 · 832 问题

查看课程