open-jdk8 1.8.0_372-b07
$ java-version openjdk version1.8.0_372OpenJDK RuntimeEnvironment(Temurin)(build1.8.0_372-b07)OpenJDK64-Bit ServerVM(CompoundVM8.17.3)(Temurin)(build17.0.160,mixed mode)火焰图(Wall JDK8)源码绝对路径:行号 ────────────────────────────────────── ──────────────────────────────────────────────1.GC Worker —GCTaskThread::run()(447width)/home/project/github/jdk8u-dev/hotspot/src/share/vm/gc_implementation/parallelScavenge/gcTaskThread.cpp:97voidGCTaskThread::run(){2.线程入口 —java_start(Thread*)(1,380width)/home/project/github/jdk8u-dev/hotspot/src/os/linux/vm/os_linux.cpp:787staticvoid*java_start(Thread*thread){3.Monitor 入口 —complete_monitor_locking_C(205width)/home/project/github/jdk8u-dev/hotspot/src/share/vm/runtime/sharedRuntime.cpp:1867-18831867complete_monitor_locking_C(oopDesc*,BasicLock*,JavaThread*)1878→ObjectSynchronizer::fast_enter(h_obj,lock,true,CHECK);// UseBiasedLockingtrue1880→ObjectSynchronizer::slow_enter(h_obj,lock,CHECK);// UseBiasedLockingfalse4.fast_enter/slow_enter(被 GCC 内联,火焰图无独立帧)/home/project/github/jdk8u-dev/hotspot/src/share/vm/runtime/synchronizer.cpp:169←fast_enter(15行)/home/project/github/jdk8u-dev/hotspot/src/share/vm/runtime/synchronizer.cpp:229←slow_enter(37行)/home/project/github/jdk8u-dev/hotspot/src/share/vm/runtime/synchronizer.cpp:265←inflate()-enter(THREAD)169voidObjectSynchronizer::fast_enter(Handle obj,BasicLock*lock,boolattempt_rebias,TRAPS){229voidObjectSynchronizer::slow_enter(Handle obj,BasicLock*lock,TRAPS){265ObjectSynchronizer::inflate(THREAD,obj(),inflate_cause_monitor_enter)-enter(THREAD);5.ObjectMonitor::enter(Thread*)(213width)/home/project/github/jdk8u-dev/hotspot/src/share/vm/runtime/objectMonitor.cpp:321voidATTRObjectMonitor::enter(TRAPS){// TRAPS → Thread* 参数6.C2 编译器(3参数)(714width)/home/project/github/jdk8u-dev/hotspot/src/share/vm/opto/c2compiler.cpp:110voidC2Compiler::compile_method(ciEnv*env,ciMethod*target,intentry_bci){