[笔记]JAVA内存模型与线程

 2019-12-10 15:43  阅读(824)
文章分类:Java Core

JAVA线程 工作内存 主内存

java内存模型中的八种操作:

lock unlock read load use assign store write

八种基本操作必须满足的规则

volatile

当一个变量被定义成volatile之后,它将具备两种特性

  一是保证此变量对所有线程的可见性(“可见性”是指当一条线程修改了这个变量的值,新值对于其他线程来说是可以立即得知的。)

  二是禁止指令重排序优化(普通的变量仅仅会保证在该方法执行过程中所有依赖赋值结果的地方都能获取到正确的结果,而不能保证变量赋值操作的顺序与程序代码中的执行顺序一致。)

先行发生原则

  程序次序规则(同一线程中)  管程锁定规则  volatile变量规则  线程启动规则  线程中断规则  对象终结规则  传递性

JAVA线程的状态(5种)

  新建new  运行runable  无限期等待waiting限期等待time waiting  阻塞blocked  结束terminated

点赞(0)
版权归原创作者所有,任何形式转载请联系作者; Java 技术驿站 >> [笔记]JAVA内存模型与线程

相关推荐