Index: lib/isolaterunner.dart |
diff --git a/lib/isolaterunner.dart b/lib/isolaterunner.dart |
index 7e15a406abe2bec1c5c4dd0d33e92172eba92e40..987621a54ec8e08a975d6c569d59966928cd25dd 100644 |
--- a/lib/isolaterunner.dart |
+++ b/lib/isolaterunner.dart |
@@ -59,16 +59,16 @@ class IsolateRunner implements Runner { |
static Future<IsolateRunner> spawn() { |
Completer portCompleter = new Completer.sync(); |
SendPort initPort = singleCompletePort(portCompleter); |
- return Isolate.spawn(IsolateRunnerRemote._create, initPort) |
- .then((Isolate isolate) { |
- // TODO: Add when VM supports it. |
- // isolate.setErrorsFatal(false); |
- return portCompleter.future.then((SendPort commandPort) { |
- var result = new IsolateRunner(isolate, commandPort); |
- // Guarantees that setErrorsFatal has completed. |
- return result.ping().then((_) => result); |
- }); |
- }); |
+ return Isolate.spawn(IsolateRunnerRemote._create, initPort).then( |
+ (Isolate isolate) { |
Lasse Reichstein Nielsen
2015/02/26 10:59:14
Also has body less indented than its delimiter lin
|
+ // TODO: Add when VM supports it. |
+ // isolate.setErrorsFatal(false); |
+ return portCompleter.future.then((SendPort commandPort) { |
+ var result = new IsolateRunner(isolate, commandPort); |
+ // Guarantees that setErrorsFatal has completed. |
+ return result.ping().then((_) => result); |
+ }); |
+ }); |
} |
/** |
@@ -138,9 +138,7 @@ class IsolateRunner implements Runner { |
Future<bool> ping({Duration timeout: const Duration(seconds: 1)}) { |
Completer completer = new Completer<bool>(); |
SendPort port = singleCompletePort(completer, |
- callback: _kTrue, |
- timeout: timeout, |
- onTimeout: _kFalse); |
+ callback: _kTrue, timeout: timeout, onTimeout: _kFalse); |
Lasse Reichstein Nielsen
2015/02/26 10:59:13
I prefer the original.
|
isolate.ping(port); |
return completer.future; |
} |
@@ -204,11 +202,10 @@ class IsolateRunner implements Runner { |
* await iso.close(); |
* } |
*/ |
- Future run(function(argument), argument, |
- {Duration timeout, onTimeout()}) { |
+ Future run(function(argument), argument, {Duration timeout, onTimeout()}) { |
return singleResultFuture((SendPort port) { |
- _commandPort.send( |
- list4(_RUN, FunctionRef.from(function), argument, port)); |
+ _commandPort |
+ .send(list4(_RUN, FunctionRef.from(function), argument, port)); |
}, timeout: timeout, onTimeout: onTimeout); |
} |
@@ -236,22 +233,19 @@ class IsolateRunner implements Runner { |
controller.addError(error, error.stackTrace); |
} |
} |
- controller = new StreamController.broadcast( |
- sync: true, |
- onListen: () { |
- port = new RawReceivePort(handleError); |
- // TODO: When supported, uncomment this. |
- // isolate.addErrorListener(port.sendPort); |
- // isolate.addOnExitListener(port.sendPort); |
- // And remove the send below, which acts as an immediate close. |
- port.sendPort.send(null); |
- }, |
- onCancel: () { |
- port.close(); |
- // this.removeErrorListener(port.sendPort); |
- // this.removeOnExitListener(port.sendPort); |
- port = null; |
- }); |
+ controller = new StreamController.broadcast(sync: true, onListen: () { |
+ port = new RawReceivePort(handleError); |
+ // TODO: When supported, uncomment this. |
+ // isolate.addErrorListener(port.sendPort); |
+ // isolate.addOnExitListener(port.sendPort); |
+ // And remove the send below, which acts as an immediate close. |
+ port.sendPort.send(null); |
+ }, onCancel: () { |
+ port.close(); |
+ // this.removeErrorListener(port.sendPort); |
+ // this.removeOnExitListener(port.sendPort); |
+ port = null; |
+ }); |
Lasse Reichstein Nielsen
2015/02/26 10:59:13
Less consistently indented. I'd prefer the onListe
|
return controller.stream; |
} |
@@ -312,8 +306,8 @@ class IsolateRunnerRemote { |
Function function = command[1].function; |
var argument = command[2]; |
SendPort responsePort = command[3]; |
- sendFutureResult(new Future.sync(() => function(argument)), |
- responsePort); |
+ sendFutureResult( |
+ new Future.sync(() => function(argument)), responsePort); |
Lasse Reichstein Nielsen
2015/02/26 10:59:14
It's not as visible that responsePort is a second
|
return; |
} |
} |