WebWorkerRunner constructor
WebWorkerRunner()
Implementation
WebWorkerRunner()
: workerNumber = ++workerCounter,
worker = web.Worker("worker/web_worker.js") {
// Listen to Worker's postMessage().
// dart.html convert the callback to a Stream.
worker.onMessage.listen((msg) {
final response = msg.data as RunnerInvocationResult;
final completer = jobs[response.id];
if (completer == null) {
print("Invalid response ${response.id} is missing a completer");
} else if (response.isSuccess) {
completer.complete(response.result);
} else {
final error = response.error;
_errors.add(error);
if (error is Object) {
completer.completeError(error);
}
}
}, cancelOnError: false, onError: (err) {});
}