Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Java

Cách đo thời gian trôi qua tính bằng nano-giây trong Java

Nói chung, thời gian trôi qua (elapsed time) là thời gian từ điểm bắt đầu đến điểm kết thúc của một sự kiện. Dưới đây là cách tìm thời gian trôi qua tính bằng nano-giây trong Java:

Phương thức nanoTime() trả về thời gian hiện tại tính bằng nano-giây. Để tìm thời gian trôi qua cho việc thực thi một phương pháp tính bằng nano-giây:

  • Lấy thời gian hiện tại bằng phương thức nanoTime().
  • Thực thi phương pháp mong muốn.
  • Lấy lại thời gian hiện tại bằng phương thức nanoTime().
  • Cuối cùng, tìm hiệu giữa giá trị kết thúc và giá trị bắt đầu.

Ví dụ

public class Example {
    public void test() {
        int num = 0;
        for (int i = 0; i <= 50; i++) {
            num = num + i;
            System.out.print(num + ", ");
        }
    }

    public static void main(String args[]) {
        // Thời gian bắt đầu
        long begin = System.nanoTime();
        // Bắt đầu đo
        new Example().test();
        // Thời gian kết thúc
        long end = System.nanoTime();
        long time = end - begin;
        System.out.println();
        System.out.println("Thời gian trôi qua: " + time + " nano-giây");
    }
}

Kết quả

0, 1, 3, 6, 10, 15, 21, 28, 36, 45, 55, 66, 78, 91, 105, 120, 136, 153, 171, 190, 210, 231, 253, 276, 300, 325, 351, 378, 406, 435, 465, 496, 528, 561, 595, 630, 666, 703, 741, 780, 820, 861, 903, 946, 990, 1035, 1081, 1128, 1176, 1225, 1275,
Thời gian trôi qua: 1530200 nano-giây