OLD | NEW |
1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 // Dart test program for testing that isolates can communicate to isolates | 5 // Dart test program for testing that isolates can communicate to isolates |
6 // other than the main isolate. | 6 // other than the main isolate. |
7 | 7 |
8 #library('CrossIsolateMessageTest'); | 8 #library('CrossIsolateMessageTest'); |
9 #import('dart:isolate'); | 9 #import('dart:isolate'); |
10 #import('../../../lib/unittest/unittest.dart'); | 10 #import('../../lib/unittest/unittest.dart'); |
11 | 11 |
12 class CrossIsolate1 extends Isolate { | 12 class CrossIsolate1 extends Isolate { |
13 CrossIsolate1() : super.heavy(); | 13 CrossIsolate1() : super.heavy(); |
14 | 14 |
15 void main() { | 15 void main() { |
16 this.port.receive((msg, replyTo) { | 16 this.port.receive((msg, replyTo) { |
17 SendPort otherIsolate = msg; | 17 SendPort otherIsolate = msg; |
18 ReceivePort receivePort = new ReceivePort(); | 18 ReceivePort receivePort = new ReceivePort(); |
19 receivePort.receive((msg, replyTo) { | 19 receivePort.receive((msg, replyTo) { |
20 otherIsolate.send(msg + 58, null); // 100. | 20 otherIsolate.send(msg + 58, null); // 100. |
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
61 Expect.equals(499, msg); | 61 Expect.equals(499, msg); |
62 myPort.close(); | 62 myPort.close(); |
63 })); | 63 })); |
64 msg[1].send(42, null); | 64 msg[1].send(42, null); |
65 })); | 65 })); |
66 })); | 66 })); |
67 })); | 67 })); |
68 })); | 68 })); |
69 }); | 69 }); |
70 } | 70 } |
OLD | NEW |