- 博客(6)
- 资源 (1)
- 收藏
- 关注

原创 Java 多线程的内存模型
Java 多线程的内存模型JMM是是Java的内存模型,和JVM的内存模型是两回事(Java Runtime Data Area)内存模型图如下当多线程进行数据交互的时候,比如线程A修改了共享变量,线程B读取读,A修改完变量在自己的工作内存中,B是看不到(或者说感知不到A的修改),只有A的工作区协会到主内存,B再从主内存读取自己的工作区才能进一步操作,因为指令重排序的存在,这个写读的顺序可能被打乱,所以JMM需要提供原子性,可见性,有序性的保证。原子性一个操作不能被打断,要么执行成功,要么执行失
2020-08-26 21:27:11
196

原创 volatile解析
volatile解析 volatile这个关键字可能很多朋友都听说过,或许也都用过,但是在java5以后这个关键字发出了异样的光芒。volatile特性1.保证内存可见性2.防止指令重排首先先带领大家了解一下java的内存模型中的内存可见性,和原子性。可见性: 可见性,是指线程之间的可见性,一个线程修改的状态对另一个线程是可见的。也就是一个线程修改的结果。另一个线程马上就能看到。原子性: ...
2018-07-07 14:01:18
306
原创 Java Runtime Data Area
Java 内存模型Java内存模型 不是JMM内存模型,这个是Java Runtime Data Area。可以按照2个维度来划分,线程独占和非线程独占。线程独占栈本地方法栈程序计数器栈用来保存方法的局部变量基本数据类型的值保存方法执行的栈帧保存对象的实例(指向堆的指针)本地方法栈用来支持虚拟机使用到的native方法服务保存对方发的出入栈和入参地址和返回地址。先入先出的结构。程序计数器用来记录线程执行的位置,当线程执行native方法的时候程序计数器为空。为什
2020-08-23 21:45:57
255
原创 一点点orcale
基本语句:describe xxx(表名称);//查看表结构set linesize 300;//每行显示多少字符set pagesize 15;//每页显示多少记录conn syste/sys //切换用户conn sys/sys as sysdba(超级用户);show user //显示当前户oracle by asc //升序
2016-07-16 16:16:21
258
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人