OLD | NEW |
| (Empty) |
1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | |
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. | |
4 | |
5 import 'package:observatory/service_io.dart'; | |
6 import 'test_helper.dart'; | |
7 | |
8 import 'dart:async'; | |
9 | |
10 void script() { | |
11 List<int> data; | |
12 var grow; | |
13 grow = (int iterations, int size, Duration duration) { | |
14 if (iterations <= 0) { | |
15 return; | |
16 } | |
17 data = new List<int>(size); | |
18 new Timer(duration, () => grow(iterations - 1, size, duration)); | |
19 }; | |
20 grow(100, 1 << 24, new Duration(seconds: 1)); | |
21 } | |
22 | |
23 var tests = [ | |
24 | |
25 (Isolate isolate) { | |
26 Completer completer = new Completer(); | |
27 // Expect at least this many GC events. | |
28 int gcCountdown = 3; | |
29 isolate.vm.events.stream.listen((ServiceEvent event) { | |
30 if (event.eventType == 'GC' && --gcCountdown == 0) { | |
31 completer.complete(); | |
32 } | |
33 }); | |
34 return completer.future; | |
35 }, | |
36 | |
37 ]; | |
38 | |
39 main(args) => runIsolateTests(args, tests, testeeConcurrent: script); | |
OLD | NEW |