aboutsummaryrefslogtreecommitdiff
path: root/common/src/main/java/me/lucko/spark/profiler/SamplerBuilder.java
diff options
context:
space:
mode:
Diffstat (limited to 'common/src/main/java/me/lucko/spark/profiler/SamplerBuilder.java')
-rw-r--r--common/src/main/java/me/lucko/spark/profiler/SamplerBuilder.java17
1 files changed, 16 insertions, 1 deletions
diff --git a/common/src/main/java/me/lucko/spark/profiler/SamplerBuilder.java b/common/src/main/java/me/lucko/spark/profiler/SamplerBuilder.java
index fa2898b..4c16d50 100644
--- a/common/src/main/java/me/lucko/spark/profiler/SamplerBuilder.java
+++ b/common/src/main/java/me/lucko/spark/profiler/SamplerBuilder.java
@@ -15,6 +15,9 @@ public class SamplerBuilder {
private ThreadDumper threadDumper = ThreadDumper.ALL;
private ThreadGrouper threadGrouper = ThreadGrouper.BY_NAME;
+ private int ticksOver = -1;
+ private TickCounter tickCounter = null;
+
public SamplerBuilder() {
}
@@ -39,8 +42,20 @@ public class SamplerBuilder {
return this;
}
+ public SamplerBuilder ticksOver(int ticksOver, TickCounter tickCounter) {
+ this.ticksOver = ticksOver;
+ this.tickCounter = tickCounter;
+ return this;
+ }
+
public Sampler start(Timer samplingThread) {
- Sampler sampler = new Sampler(this.samplingInterval, this.threadDumper, this.threadGrouper, this.timeout);
+ Sampler sampler;
+ if (this.ticksOver != -1 && this.tickCounter != null) {
+ sampler = new Sampler(this.samplingInterval, this.threadDumper, this.threadGrouper, this.timeout, this.tickCounter, this.ticksOver);
+ } else {
+ sampler = new Sampler(this.samplingInterval, this.threadDumper, this.threadGrouper, this.timeout);
+ }
+
sampler.start(samplingThread);
return sampler;
}