Async task executor for Dart

Executes async tasks with a configurable maximum concurrency and rate.

Usage

A simple usage example:

import 'dart:async';

import 'package:executor/executor.dart';

Future main() async {
  Executor executor = new Executor(concurrency: 10);
  // only 10 of them will be running at a time
  for (int i = 0; i < 20; i++) {
     executor.scheduleTask(() async {
       // await longDatabaseTask()
       // await anotherProcessing()
     });
  }
}
  • source code
  • contributors: Agilord
  • Related projects:
    • Alternative: the Dart team's pool library.
    • Database executor: db_executor (from the same authors as this projects)

Libraries

executor
Executes async tasks with a configurable maximum concurrency and rate.