package com.printer.demo.utils;

import android.widget.Toast;

public class TimeTracker {

    private static ThreadLocal<Long> startTime = new ThreadLocal<>();

    // 开始计时
    public static void start() {
        System.out.println(" time: start");
        startTime.set(System.nanoTime());
    }

    // 结束计时并打印运行时间（纳秒）
    public static void endAndPrint() {
        long endTime = System.nanoTime();
        long elapsedTime = endTime - startTime.get();
        System.out.println("Elapsed time: " + elapsedTime + " nanoseconds");
    }

    // 结束计时并打印运行时间（毫秒）
    public static void endAndPrintMillis() {
        long endTime = System.nanoTime();
        long elapsedTime = (endTime - startTime.get()) / 1_000_000;
        System.out.println("--------------Elapsed time: " + elapsedTime + " milliseconds");

    }

    // 测试方法
    public static void main(String[] args) {
        TimeTracker.start();
        // 这里放置你要测试的代码
        try {
            Thread.sleep(500); // 模拟一个耗时操作
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        TimeTracker.endAndPrint(); // 打印耗时（纳秒）

        TimeTracker.start();
        // 这里放置另一个你要测试的代码
        try {
            Thread.sleep(1000); // 模拟一个耗时操作
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        TimeTracker.endAndPrintMillis(); // 打印耗时（毫秒）
    }
}
