Interface ProfilingAware


public interface ProfilingAware
Marks a Step as one that is aware of profiling. A good example of where this is important is with GroupStep which needs to track and hold a Barrier, which is important for the ProfileStrategy to know about. Once the ProfileStep is injected the Barrier needs to be recalculated so that the timer can be properly started on the associated ProfileStep. Without that indirect start of the timer, the operation related to the Barrier will not be properly accounted for and when metrics are normalized it is possible to end up with a negative timing.
Author:
Stephen Mallette (http://stephen.genoprime.com)
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Interface
    Description
    static final class 
    A helper class which holds a Barrier and it's related ProfileStep so that the latter can have its timer started and stopped appropriately.
  • Method Summary

    Modifier and Type
    Method
    Description
    default void
    Deprecated.
    As of release 3.8.0, not directly replaced because a simple call to Step.reset() at traversal lock can more generally do what is needed by this much more specific API.
  • Method Details

    • prepareForProfiling

      @Deprecated default void prepareForProfiling()
      Deprecated.
      As of release 3.8.0, not directly replaced because a simple call to Step.reset() at traversal lock can more generally do what is needed by this much more specific API.
      Prepares the step for any internal changes that might help ensure that profiling will work as expected.