summaryrefslogtreecommitdiff
path: root/tools/ahat/src/ObjectsHandler.java
diff options
context:
space:
mode:
author Richard Uhler <ruhler@google.com> 2015-10-29 14:55:00 -0700
committer Richard Uhler <ruhler@google.com> 2015-11-03 11:11:57 -0800
commit1af86f17dc9a47faf1c6cd7ccd23d248fdc615ab (patch)
tree22796622e72c8381bbb26d15c3f7dd35584dbdb2 /tools/ahat/src/ObjectsHandler.java
parent530dcc8b74a0f4e5f54e2b2c326580d58594a2f7 (diff)
ahat: limit default number of results shown.
Previously, ahat had performance issues rendering large pages. This change causes ahat to limit the number results shown in large pages by default, requiring the user to explicitly request more information if they care about it. Bug: 25114227 Change-Id: Ief67396be254be4c84e6971f5b903a701206e17b
Diffstat (limited to 'tools/ahat/src/ObjectsHandler.java')
-rw-r--r--tools/ahat/src/ObjectsHandler.java12
1 files changed, 9 insertions, 3 deletions
diff --git a/tools/ahat/src/ObjectsHandler.java b/tools/ahat/src/ObjectsHandler.java
index 4e9c42e566..8ad3f481da 100644
--- a/tools/ahat/src/ObjectsHandler.java
+++ b/tools/ahat/src/ObjectsHandler.java
@@ -22,9 +22,13 @@ import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
-class ObjectsHandler extends AhatHandler {
+class ObjectsHandler implements AhatHandler {
+ private static final String OBJECTS_ID = "objects";
+
+ private AhatSnapshot mSnapshot;
+
public ObjectsHandler(AhatSnapshot snapshot) {
- super(snapshot);
+ mSnapshot = snapshot;
}
@Override
@@ -51,13 +55,15 @@ class ObjectsHandler extends AhatHandler {
new Column("Size", Column.Align.RIGHT),
new Column("Heap"),
new Column("Object"));
- for (Instance inst : insts) {
+ SubsetSelector<Instance> selector = new SubsetSelector(query, OBJECTS_ID, insts);
+ for (Instance inst : selector.selected()) {
doc.row(
DocString.format("%,d", inst.getSize()),
DocString.text(inst.getHeap().getName()),
Value.render(inst));
}
doc.end();
+ selector.render(doc);
}
}