热门
最新
红包
立Flag
投票
同城
我的
发布
保持热爱共赴山海
CSDN App 扫码分享
2
5
打赏
- 复制链接
- 举报
下一条:
每日小tip: invoke()报错,我去检查错误原因,发现2个小知识点, (1) 创建实例newinstance的时候,返回的是public方法,这就是不能获取私有属性的原因. (2)Method中的MethodAccessor属性是volatile修饰的,所以通过反射获取方法对象时,是保证属性一致的思考与联想: 为什么需要用volatile来修饰?解决了一个什么问题?有没有类似的或者其他的解决办法.结论或者总结: 高并发情况对于变量的保护:(1)volatile保证变量在每个本地内存和主内存的同步,即轻量级锁,但不能保证原子性 (2)synchronized 可以保证原子性,但重量级锁会引起线程上下文的切换和调度,成本更高参考:https://zhuanlan.zhihu.com/p/138819184







