Skip to main content

execution_metrics 3.0.0 copy "execution_metrics: ^3.0.0" to clipboard
execution_metrics: ^3.0.0 copied to clipboard

Measure and report how long functions take to run in Dart and Flutter apps.

example/main.dart

import 'package:execution_metrics/execution_metrics.dart';

Future<void> main() async {
  // Measure an asynchronous task and get its return value back.
  final result = await ExecutionMetrics.runAsync(
    taskName: 'Async Task Example',
    deviceInfo: 'Example device',
    action: () async {
      await Future<void>.delayed(const Duration(seconds: 2));
      return 'Task Completed';
    },
    callback: (result) {
      print('Callback: ${result.taskName} took '
          '${result.totalMilliseconds} ms');
    },
  );

  print('Result: $result');

  // Measure a synchronous task.
  ExecutionMetrics.run(
    taskName: 'Sync Task Example',
    action: () => print('Running sync task...'),
  );

  // Manual start/stop, without printing the report.
  ExecutionMetrics.logger = null;
  final metrics = ExecutionMetrics()..start(taskName: 'Manual');
  await Future<void>.delayed(const Duration(milliseconds: 300));
  final manual = metrics.stop();
  print('Manual: ${manual.elapsed}');
}
2
likes
160
points
382
downloads

Documentation

API reference

Publisher

verified publishersmart-dev.com.co

Weekly Downloads

Measure and report how long functions take to run in Dart and Flutter apps.

Homepage
Repository (GitHub)
View/report issues

Topics

#performance #benchmark #metrics #stopwatch

License

MIT (license)

More

Packages that depend on execution_metrics