diff options
| author | 2009-09-23 11:21:22 -0700 | |
|---|---|---|
| committer | 2009-09-23 11:21:22 -0700 | |
| commit | fcc3ccb9769dd39ac93dbad56ee590e2f7d041c3 (patch) | |
| tree | 043fcb85ad730552ff7ac4e48de42d3a9abbf7dd /tools/preload/LoadedClass.java | |
| parent | b06c9a8c8e59067edd3c6b5af574ff382a4ef656 (diff) | |
Added tool to generate application-specific reports from class load profiling data. Generated new profiling data. Deleted old data. Generated new preloaded-classes file.
Diffstat (limited to 'tools/preload/LoadedClass.java')
| -rw-r--r-- | tools/preload/LoadedClass.java | 30 |
1 files changed, 29 insertions, 1 deletions
diff --git a/tools/preload/LoadedClass.java b/tools/preload/LoadedClass.java index 86e5dfc0331a..02cff10def98 100644 --- a/tools/preload/LoadedClass.java +++ b/tools/preload/LoadedClass.java @@ -15,7 +15,11 @@ */ import java.io.Serializable; -import java.util.*; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.HashSet; +import java.util.List; +import java.util.Set; /** * A loaded class. @@ -50,6 +54,30 @@ class LoadedClass implements Serializable, Comparable<LoadedClass> { this.systemClass = systemClass; } + /** + * Returns true if this class was loaded by more than one proc. + */ + boolean isSharable() { + Set<String> procNames = new HashSet<String>(); + for (Operation load : loads) { + if (load.process.fromZygote()) { + procNames.add(load.process.name); + if (procNames.size() > 1) { + return true; + } + } + } + for (Operation init : initializations) { + if (init.process.fromZygote()) { + procNames.add(init.process.name); + if (procNames.size() > 1) { + return true; + } + } + } + return false; + } + void measureMemoryUsage() { this.memoryUsage = MemoryUsage.forClass(name); } |