Identifying lambdas in stacktrace in Java 8

后端 未结 1 1567
误落风尘
误落风尘 2020-12-10 17:26

I am trying to profile a Java application that uses lambdas using JProfiler. I am having trouble identifying, which lambda the profiler is showing as a hotspot:

相关标签:
1条回答
  • 2020-12-10 17:40

    Unfortunately, there is no direct way to identify the lambda because lambdas by nature have no name. At runtime, lambdas are currently implemented with anonymous classes. They are numbered sequentially after the $ sign with respect to the containing class.

    If you turn on line number resolution in JProfiler (session settings-> profiling settings tab-> customize-> check box on the "method call recording" tab), you will see a line number on the "run" method in the hot spot back trace which should help you to find the lambda if it's the only lambda on that line.

    0 讨论(0)
提交回复
热议问题