首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
基础编程
订阅
上虞
更多收藏集
微信扫码分享
微信
新浪微博
QQ
7篇文章 · 0订阅
Java 多线程和高并发面试题
volatile 是一种轻量级的同步机制。 JMM(Java 内存模型)是一种抽象的概念,描述了一组规则或规范,定义了程序中各个变量的访问方式。 JVM运行程序的实体是线程,每个线程创建时 JVM 都会为其创建一个工作内存,是线程的私有数据区域。JMM中规定所有变量都存储在主内…
JVM-GC:G1回收器和JVM(2)
例如设置xms = 32G,xmx=128G,则xms算出的HR大小为 16M,xmx算出的分区大小为 64M > 32M,所以设置为32M,两者取最大值,所以HR大小为32M。所以分区个数动态范围变化为1024个到4096个之间。 如果没设置最大值或最小值,或只设置了其中一个…
JVM相关概念,GC,CMS
基于栈(Stack-based)的虚拟机: 不同于Intel x86和ARM等比较流行的计算机处理器都是基于寄存器(register)架构,JVM是基于栈执行的。 符号引用(Symbolic reference): 除基本类型外的所有Java类型(类和接口)都是通过符号引用取得…
彻底理解synchronized
通过字节码分析以及源码解析深入理解synchronized的使用场景以及背后的实现原理,避免在生产环境出现并发问题,
violate能保证可见性但无法提供操作的原子性
简单了解一下Java内存模型。 不同线程之间无法直接访问其他线程工作内存中的变量,线程间变量值的传递需要通过主内存来完成。 原子性:即不可再分了,不能分为多步操作。比如赋值或者return。比如"a = 1;"和 "return a;"这样的操作都具有原子性。类似"a += b…
JVM内存模型 与 JMM内存模型
1.1. 可以看做是当前线程所执行的字节码的信号指示器。字节码解释器就是通过改变该计数器的值来选取下一条需要执行的字节码指令, 分支、循环、跳转、异常处理、线程恢复等基础功能都需依赖计数器来完成。注:但是,如果当前线程正在执行的是一个本地方法,那么此时程序计数器为空。 1.2.…
JVM系列(二) - JVM内存区域
JVM内存区域包括PC计数器、Java虚拟机栈、本地方法栈、堆、方法区、运行时常量池和直接内存。 本文主要介绍各个内存区域的作用和特性,同时分别阐述各个区域发生内存溢出的可能性和异常类型。 (一). JVM内存区域 Java虚拟机执行Java程序的过程中,会把所管理的内存划分为…