TimeRecorder class
Пакет: com.hypixel.hytale.common.benchmark
Файл: com/hypixel/hytale/common/benchmark/TimeRecorder.java
extends: ContinuousValueRecorder
Поля (1)
| Модификаторы | Тип | Имя |
|---|---|---|
final |
String |
DEFAULT_COLUMN_SEPARATOR |
Методы (15)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
public |
double |
enddouble end(long var1) |
abstract |
return |
formatreturn format(var0, "s") |
abstract |
return |
formatreturn format(var0, "ms") |
abstract |
return |
formatreturn format(var0, "us") |
abstract |
return |
formatreturn format(var0, "ns") |
public |
void |
formatHeadervoid formatHeader(@Nonnull Formatter var1) |
public |
void |
formatHeadervoid formatHeader(@Nonnull Formatter var1, @Nonnull String var2) |
public |
void |
formatValuesvoid formatValues(@Nonnull Formatter var1) |
public |
void |
formatValuesvoid formatValues(@Nonnull Formatter var1, @Nonnull String var2) |
|
|
if if(var0 <= 0.0) |
|
|
if if(var0 >= 10.0) |
|
|
if if(var0 >= 10.0) |
|
|
if if(var0 >= 10.0) |
public |
double |
recordNanosdouble recordNanos(long var1) |
public |
long |
startlong start() |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.common.benchmark;
class="kw">import com.hypixel.hytale.common.util.FormatUtil;
class="kw">import java.util.Formatter;
class="kw">import javax.annotation.Nonnull;
class="kw">public class TimeRecorder class="kw">extends ContinuousValueRecorder {
class="kw">public class="kw">static class="kw">final String DEFAULT_COLUMN_SEPARATOR = "|";
class="kw">public class="kw">static class="kw">final String DEFAULT_COLUMN_FORMAT_HEADER = "|%-6.6s";
class="kw">public class="kw">static class="kw">final String DEFAULT_COLUMN_FORMAT_VALUE = "|%6.6s";
class="kw">public class="kw">static class="kw">final String[] DEFAULT_COLUMNS = DiscreteValueRecorder.DEFAULT_COLUMNS;
class="kw">public class="kw">static class="kw">final double NANOS_TO_SECONDS = 1.0E-9;
class="kw">public TimeRecorder() {
}
class="kw">public long start() {
class="kw">return System.nanoTime();
}
class="kw">public double end(long var1) {
class="kw">return this.recordNanos(System.nanoTime() - var1);
}
class="kw">public double recordNanos(long var1) {
class="kw">return super.record(var1 * 1.0E-9);
}
@Nonnull
@Override
class="kw">public String toString() {
class="kw">return String.format("Avg=%s Min=%s Max=%s", formatTime(this.getAverage(0.0)), formatTime(this.getMinValue(0.0)), formatTime(this.getMaxValue(0.0)));
}
@Nonnull
class="kw">public class="kw">static String formatTime(double var0) {
if (var0 <= 0.0) {
class="kw">return "0s";
}
if (var0 >= 10.0) {
class="kw">return format(var0, "s");
}
var0 *= 1000.0;
if (var0 >= 10.0) {
class="kw">return format(var0, "ms");
}
var0 *= 1000.0;
if (var0 >= 10.0) {
class="kw">return format(var0, "us");
}
var0 *= 1000.0;
class="kw">return format(var0, "ns");
}
@Nonnull
class="kw">protected class="kw">static String format(double var0, String var2) {
class="kw">return (int)Math.round(var0) + var2;
}
class="kw">public void formatHeader(@Nonnull Formatter var1) {
this.formatHeader(var1, "|%-6.6s");
}
class="kw">public void formatHeader(@Nonnull Formatter var1, @Nonnull String var2) {
FormatUtil.formatArray(var1, var2, DEFAULT_COLUMNS);
}
class="kw">public void formatValues(@Nonnull Formatter var1) {
this.formatValues(var1, "|%6.6s");
}
class="kw">public void formatValues(@Nonnull Formatter var1, @Nonnull String var2) {
FormatUtil.formatArgs(var1, var2, formatTime(this.getAverage()), formatTime(this.getMinValue()), formatTime(this.getMaxValue()), this.count);
}
}