- System requirements
- Profiler architecture
- Profiler installation
- Uninstall profiler
- Running the profiler
- Profiler activation
- Welcome screen
- Start profiling
- Profiling overhead
- Snapshots
- Solving performance problems
- CPU profiling
- Thread profiling
- Virtual threads support
- Object allocation profiling
- Memory profiling
- Monitor profiling
- Exception profiling
- Telemetry
- Probes: monitor events of various kinds
- Events in user interface
- Event inspections
- Built-in probes
- Probe classes
- Monitoring method invocation events
- Probe class annotation @MethodPattern
- Callback onEnter()
- Callback onReturn()
- Callback onExit()
- Callbacks onUncaughtException() and onUncaughtExceptionExt()
- Parameter annotation @Param
- Parameter annotation @Params
- Parameter annotation @This
- Parameter annotation @ClassRef
- Parameter annotation @MethodName
- Parameter annotation @MethodTimeMs
- Parameter annotation @MethodTimeNs
- Parameter annotation @MethodParameterTypes
- Parameter annotation @MethodSignature
- Parameter annotation @OnEnterResult
- Parameter annotation @ReturnValue
- Parameter annotation @ThrownException
- Probe application rules
- Data storage
- Inspections: automatic recognition of typical problems
- Automatically trigger actions on event
- Automatic deobfuscation
- Summary
- Filters
- Profiler command line
- Export of profiling results to external formats
- Profiler Java API
- Profiler HTTP API
- Settings
- Troubleshooting and FAQ
Callback method parameter annotation @OnEnterResult
Callback parameter annotated with @OnEnterResult
will be assigned with a value returned from onEnter()
defined in the same probe class.
This approach enables effective way of data transfer
between method enter and exit callbacks
(the value is stored in the stack).
In which callbacks can be used
Parameter annotated with @OnEnterResult
can be used in onReturn(),
onUncaughtException(),
onUncaughtExceptionExt() and
onExit() and
and only if the probe class has non-void onEnter()
defined.
Declaration type
Parameter annotated with @OnEnterResult
must be declared with the same
type as the return type of onEnter().
If onEnter() is declared void,
@OnEnterResult
cannot be used.