FurryChat/lib/utils/run_in_background.dart

14 lines
299 B
Dart

import 'dart:async';
import 'package:isolate/isolate.dart';
Future<T> runInBackground<T, U>(
FutureOr<T> Function(U arg) function, U arg) async {
final isolate = await IsolateRunner.spawn();
try {
return await isolate.run(function, arg);
} finally {
await isolate.close();
}
}