Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(167)

Side by Side Diff: runtime/observatory/lib/src/app/page.dart

Issue 2771293003: Resubmission of native memory allocation info surfacing in Observatory. Fixed crashing tests and st… (Closed)
Patch Set: Added page to Observatory to display native memory allocation information. Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file 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 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 part of app; 5 part of app;
6 6
7 final _allocationProfileRepository = new AllocationProfileRepository(); 7 final _allocationProfileRepository = new AllocationProfileRepository();
8 final _breakpointRepository = new BreakpointRepository(); 8 final _breakpointRepository = new BreakpointRepository();
9 final _classRepository = new ClassRepository(); 9 final _classRepository = new ClassRepository();
10 final _classSampleProfileRepository = new ClassSampleProfileRepository(); 10 final _classSampleProfileRepository = new ClassSampleProfileRepository();
11 final _contextRepository = new ContextRepository(); 11 final _contextRepository = new ContextRepository();
12 final _evalRepository = new EvalRepository(); 12 final _evalRepository = new EvalRepository();
13 final _fieldRepository = new FieldRepository(); 13 final _fieldRepository = new FieldRepository();
14 final _functionRepository = new FunctionRepository(); 14 final _functionRepository = new FunctionRepository();
15 final _heapSnapshotRepository = new HeapSnapshotRepository(); 15 final _heapSnapshotRepository = new HeapSnapshotRepository();
16 final _icdataRepository = new ICDataRepository(); 16 final _icdataRepository = new ICDataRepository();
17 final _inboundReferencesRepository = new InboundReferencesRepository(); 17 final _inboundReferencesRepository = new InboundReferencesRepository();
18 final _instanceRepository = new InstanceRepository(); 18 final _instanceRepository = new InstanceRepository();
19 final _isolateRepository = new IsolateRepository(); 19 final _isolateRepository = new IsolateRepository();
20 final _isolateSampleProfileRepository = new IsolateSampleProfileRepository(); 20 final _isolateSampleProfileRepository = new IsolateSampleProfileRepository();
21 final _libraryRepository = new LibraryRepository(); 21 final _libraryRepository = new LibraryRepository();
22 final _megamorphicCacheRepository = new MegamorphicCacheRepository(); 22 final _megamorphicCacheRepository = new MegamorphicCacheRepository();
23 final _metricRepository = new MetricRepository(); 23 final _metricRepository = new MetricRepository();
24 final _nativeMemorySampleProfileRepository =
25 new NativeMemorySampleProfileRepository();
24 final _objectPoolRepository = new ObjectPoolRepository(); 26 final _objectPoolRepository = new ObjectPoolRepository();
25 final _objectRepository = new ObjectRepository(); 27 final _objectRepository = new ObjectRepository();
26 final _objectstoreRepository = new ObjectStoreRepository(); 28 final _objectstoreRepository = new ObjectStoreRepository();
27 final _persistentHandlesRepository = new PersistentHandlesRepository(); 29 final _persistentHandlesRepository = new PersistentHandlesRepository();
28 final _portsRepository = new PortsRepository(); 30 final _portsRepository = new PortsRepository();
29 final _scriptRepository = new ScriptRepository(); 31 final _scriptRepository = new ScriptRepository();
30 final _singleTargetCacheRepository = new SingleTargetCacheRepository(); 32 final _singleTargetCacheRepository = new SingleTargetCacheRepository();
31 final _stronglyReachangleInstancesRepository = 33 final _stronglyReachangleInstancesRepository =
32 new StronglyReachableInstancesRepository(); 34 new StronglyReachableInstancesRepository();
33 final _subtypeTestCacheRepository = new SubtypeTestCacheRepository(); 35 final _subtypeTestCacheRepository = new SubtypeTestCacheRepository();
(...skipping 149 matching lines...) Expand 10 before | Expand all | Expand 10 after
183 element = new FlagListElement( 185 element = new FlagListElement(
184 app.vm, app.events, new FlagsRepository(app.vm), app.notifications, 186 app.vm, app.events, new FlagsRepository(app.vm), app.notifications,
185 queue: app.queue); 187 queue: app.queue);
186 } 188 }
187 189
188 void _visit(Uri uri) { 190 void _visit(Uri uri) {
189 super._visit(uri); 191 super._visit(uri);
190 } 192 }
191 } 193 }
192 194
195 class NativeMemoryProfilerPage extends SimplePage {
196 NativeMemoryProfilerPage(app)
197 : super('native-memory-profile', 'native-memory-profile', app);
198 @override
199 onInstall() {
200 if (element == null) {
201 element = new NativeMemoryProfileElement(app.vm, app.events,
202 app.notifications, _nativeMemorySampleProfileRepository,
203 queue: app.queue);
204 }
205 assert(element != null);
206 }
207
208 void _visit(Uri uri) {
209 super._visit(uri);
210 }
211 }
212
193 class InspectPage extends MatchingPage { 213 class InspectPage extends MatchingPage {
194 InspectPage(app) : super('inspect', app); 214 InspectPage(app) : super('inspect', app);
195 215
196 final DivElement container = new DivElement(); 216 final DivElement container = new DivElement();
197 217
198 void _visit(Uri uri) { 218 void _visit(Uri uri) {
199 super._visit(uri); 219 super._visit(uri);
200 getIsolate(uri).then((isolate) { 220 getIsolate(uri).then((isolate) {
201 var objectId = uri.queryParameters['objectId']; 221 var objectId = uri.queryParameters['objectId'];
202 if (objectId == null) { 222 if (objectId == null) {
(...skipping 698 matching lines...) Expand 10 before | Expand all | Expand 10 after
901 element = new TimelinePageElement(app.vm, app.events, app.notifications, 921 element = new TimelinePageElement(app.vm, app.events, app.notifications,
902 queue: app.queue); 922 queue: app.queue);
903 } 923 }
904 924
905 void _visit(Uri uri) { 925 void _visit(Uri uri) {
906 assert(canVisit(uri)); 926 assert(canVisit(uri));
907 } 927 }
908 928
909 bool canVisit(Uri uri) => uri.path == 'timeline'; 929 bool canVisit(Uri uri) => uri.path == 'timeline';
910 } 930 }
OLDNEW
« no previous file with comments | « runtime/observatory/lib/src/app/application.dart ('k') | runtime/observatory/lib/src/cpu_profile/cpu_profile.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698