spawnRunner function
Future<Runner>
spawnRunner(
- RunnerBuilder builder
)
Implementation
Future<Runner> spawnRunner(RunnerBuilder builder) async {
final spawner = () => IsolateRunner.build(builder);
Runner result;
if (builder.poolSize == 1) {
/// Create a single runner
result = await spawner();
} else if (builder.poolSize > 1) {
result = await LoadBalancer.create(builder.poolSize, spawner);
} else {
throw 'Invalid runner configuration. Pool size must be at least 1';
}
if (builder.autoCloseChildren) {
result.closeWhenParentIsolateExits();
}
return result;
}