time statistics

import static java.lang.System.currentTimeMillis;

public class ProcessTimer {

    private Long startTimeInMilliseconds;
    private Long executionTimeInMilliseconds;
    private String executionTime;

    public ProcessTimer() {
        this.startTimeInMilliseconds = currentTimeMillis();
    }

    public ProcessTimer(Long startTimeInMilliseconds) {
        this.startTimeInMilliseconds = startTimeInMilliseconds;
    }

    public Long getExecutionTimeInMilliseconds(Long endTimeInMilliseconds) {
        updateTimings(endTimeInMilliseconds);
        return executionTimeInMilliseconds;
    }

    public Long getExecutionTimeInMilliseconds() {
        updateTimings(currentTimeMillis());
        return executionTimeInMilliseconds;
    }

    public String getExecutionTime() {
        updateTimings(currentTimeMillis());
        return executionTime;
    }

    public String getExecutionTime(Long endTimeInMilliseconds) {
        updateTimings(endTimeInMilliseconds);
        return executionTime;
    }

    private void updateTimings(Long endTimeMilliseconds) {
        executionTimeInMilliseconds = endTimeMilliseconds - startTimeInMilliseconds;
        executionTime = executionTimeInMilliseconds + " ms";
    }
}

 

 

Guess you like

Origin http://10.200.1.11:23101/article/api/json?id=326557706&siteId=291194637