trackStage<T> abstract method

T trackStage<T>(
  1. String label,
  2. T action(), {
  3. bool isExternal = false,
})

Tracks performance of action separately.

If performance tracking is enabled, tracks action as separate stage identified by label. Otherwise just runs action.

You can specify action as isExternal (waiting for some external resource like network, process or file IO). In that case action will be tracked as single time slice from the beginning of the stage till completion of Future returned by action.

Otherwise all separate time slices of asynchronous execution will be tracked, but waiting for external resources will be a gap.

Returns value returned by action. action can be async function returning Future.

Implementation

T trackStage<T>(String label, T Function() action, {bool isExternal = false});