摘要:
深入理解Java虚拟机:(十二)JVM内的即时编译器 链接:https://blog.csdn.net/riemann_/article/details/104104967 轻松看懂Java字节码 https://juejin.cn/post/6844903588716609543 jstat -g 阅读全文
摘要:
目录 简介 监控的痛点 WatchService和文件系统 WatchSerice的使用和实现本质 总结 简介 小师妹这次遇到了监控文件变化的问题,F师兄给小师妹介绍了JDK7 nio中引入的WatchService,没想到又顺道普及了一下文件系统的概念,万万没想到。 监控的痛点 小师妹:F师兄最近 阅读全文
摘要:
前些日子學弟來問怎麼判斷按下 Button 時,是否有同時按下Ctrl+Alt。學弟是在actionPerformed裡,用 ActionEvent 的getModifiers()與ActionEvent.ALT_MASK和ActionEvent.CTRL_MASK來判斷,不過他執行出來的結果卻是錯 阅读全文
摘要:
在Java的应用中,或多或少的都会接触到一些锁,那么问题就来了,在Java中,常见的锁有哪些,都有什么样的作用?? 这里给大家简单的简述一下这些学常见的锁。 本文件所涉及到的锁: 1.公平锁 / 非公平锁 2.可重入锁 / 不可重入锁 3.独享锁 / 共享锁 4.互斥锁 / 读写锁 5.乐观锁 / 阅读全文
摘要:
1. 性能篇 1.1 建议的性能参数 1. 取消偏向锁: -XX:-UseBiasedLocking JDK1.6开始默认打开的偏向锁,会尝试把锁赋给第一个访问它的线程,取消同步块上的synchronized原语。如果始终只有一条线程在访问它,就成功略过同步操作以获得性能提升。 但一旦有第二条线程访 阅读全文
摘要:
一、基本概念名词用于 HotSpot 虚拟机中。 提前编译(Ahead Of Time,AOT)即时编译(Just In TIme,JIT)解释器(Interpreter)编译器(Compiler)客户端编译器(Client Compiler,C1)服务端编译器(Server Compiler,C2 阅读全文
摘要:
开启 JFR 收集: 由于JFR是商用的,所以需要解锁Java程序的商业feature: -XX:+UnlockCommercialFeatures -XX:+FlightRecorder --JDK 1.8u40之前版本,需再jvm启动前添加参数 # JDK 1.8u40之后版本,不需要在启动的时 阅读全文
摘要:
JMH简介 官网:http://openjdk.java.net/projects/code-tools/jmh/ 简介:JMH is a Java harness for building, running, and analysing nano/micro/milli/macro benchma 阅读全文
摘要:
如果你经常遇到 Java 线上性能问题束手无策,看着线上服务 CPU 飙升一筹莫展,发现内存不断泄露满脸茫然。别慌,这里有一款低开销、自带火焰图、让你大呼好用的 Java 性能分析工具 - async-profiler。 最近 Arthas 性能分析工具上线了火焰图分析功能,Arthas 使用 as 阅读全文
摘要:
解析器和JIT即时编译器在部分商用虚拟机中(如HotSpot),Java程序初是通过解释器(Interpreter)进行解释执行的,当 虚拟机发现某个方法或代码块的运行特别频繁时,就会把这些代码认定为“热点代码”。为了提高热点代 码的执行效率,在运行时,虚拟机将会把这些代码编译成与本地平台相关的机器 阅读全文