runIsolateTask<I, T> method
Future<T?>
runIsolateTask<I, T>(
- LevitIsolateTask<
I, T> task, - I input, {
- String? id,
- TaskPriority priority = TaskPriority.normal,
- TaskConflictPolicy conflictPolicy = TaskConflictPolicy.reject,
- int retries = 0,
- Duration? retryDelay,
- bool useExponentialBackoff = true,
- double weight = 1.0,
- void onError(
- Object error,
- StackTrace stackTrace
- TaskCachePolicy<
T> ? cachePolicy, - LevitTaskMetadata? metadata,
- String? debugName,
Executes a top-level/static isolate task and tracks its state.
Implementation
Future<T?> runIsolateTask<I, T>(
LevitIsolateTask<I, T> task,
I input, {
String? id,
TaskPriority priority = TaskPriority.normal,
TaskConflictPolicy conflictPolicy = TaskConflictPolicy.reject,
int retries = 0,
Duration? retryDelay,
bool useExponentialBackoff = true,
double weight = 1.0,
void Function(Object error, StackTrace stackTrace)? onError,
TaskCachePolicy<T>? cachePolicy,
LevitTaskMetadata? metadata,
String? debugName,
}) {
return _runTrackedIsolateTask<I, T>(
task,
input,
id: id,
priority: priority,
conflictPolicy: conflictPolicy,
retries: retries,
retryDelay: retryDelay,
useExponentialBackoff: useExponentialBackoff,
weight: weight,
onError: onError,
cachePolicy: cachePolicy,
metadata: metadata,
debugName: debugName,
);
}