jvm
文章平均质量分 85
Java虚拟机学习
姜小白-
Java开发,项目管理,打杂,啥都做
展开
-
volatile对所有线程可见
Java中synchronized关键字可以保证变量的同步,Java还有一个稍弱的同步机制,即volatile变量。volatile用户确保将变量的更新操作同步通知到其它线程。volatile变量具备两种特性:一种是保证该变量对所有线程可见,在一个线程修改了变量的值后,新的值对于其它线程时可以立即获取的;一种是volatile禁止指令重排,即volatile变量不会被缓存在寄存器或者其它处理器不可见的地方,因此在读取volatile类型的变量时总会返回最新写入的值。因为在访问volatile变脸时不原创 2021-04-04 15:28:55 · 853 阅读 · 1 评论 -
双亲委派机制
JVM提供了三种类加载器,分别为启动类加载器(Bootstrap Classloader)、扩展类加载器(Extention Classloader)和应用程序类加载器(Application Classloader)。其中启动类加载器是使用C/C++语言实现的,是虚拟机自身的一部分;其它的类加载器,都是由Java语言实现的,独立存在于虚拟机外部,并且全部继承自抽象类java.lang.ClassLoader。启动类加载器:负责加载JAVA_HOME/lib目录中的类库,或通过-Xbootclasspa原创 2021-04-01 13:04:55 · 617 阅读 · 1 评论 -
jdk小工具之jps
jps(JVM Process Status),顾名思义,java 虚拟机进程状态,是jdk小工具包中最常用的工具之一。jdk 的很多小工具的名称都参考了UNIX命名的方式,jps是其中的典型。jps的功能也和ps命令类似:可以列出正在运行的虚拟机进程,并显示虚拟机执行主类(Main Class,main() 函数所在的类)名称以及这些进程的本地虚拟机唯一ID (local virtual machine identifier,LVMID)。原创 2014-11-28 23:06:35 · 2347 阅读 · 0 评论 -
hotspot 虚拟机的server和client模式
hotspot包括server和client两种模式的实现:Java HotSpot Client VM(-client),为在客户端环境中减少启动时间而优化;Java HotSpot Server VM(-server),为在服务器环境中最大化程序执行速度而设计。比较:Server VM启动比Client VM慢,运行比Client VM快。server模式的运行中,垃圾回收处理做的比较好一些。原创 2014-11-29 21:27:10 · 9022 阅读 · 5 评论 -
jdk小工具之jstat
jstat(JVM Statisitics Monitoring Tool) 是用于监视虚拟机各种运行状态信息的命令行工具。它可以显示本地或远程虚拟机进程中的类装载、内存、垃圾收集、JIT编译等运行数据,在没有GUI图形界面,只提供了纯文本控制台环境的服务器上,它将是运行期定位虚拟机性能问题的首选工具。jstat 命令格式为:jstat [ option vmid [interval [s|ms] [count] ] ]原创 2014-12-02 20:58:33 · 922 阅读 · 0 评论