您的位置:

java执行时间,java获取代码执行时间

本文目录一览:

java 如何计算线程执行时间

记录一个起始时间,记录一个结束时间,两个相减就是程序运行时间,代码如下

long start = System.currentTimeMillis(); // 记录起始时间

try { 

    Thread.sleep(5000);                     // 线程睡眠5秒,让运行时间不那么小

} catch (InterruptedException e) {

    e.printStackTrace();

}

long end = System.currentTimeMillis();       // 记录结束时间

System.out.println(end-start);              // 相减得出运行时间

得出的单位是毫秒。

java 如何设定时间执行程序

用Timer可以实现~~

Timer的schedule方法可以指定第一次运行的时刻,和重复间隔

具体可以参考API

timer.schedule(task, firstTime, period)

指定firstTime为21:00:00,period为一天的毫秒数24*3600*1000就成了。。

或者可以自己写个线程,放个while循环,每分钟检查一次,如果到时间了就执行任务,如果没到就sleep一分钟。。当然,这种方法比较土。。

更复杂点的可以借助现有的包,比如quartz,有兴趣可以研究下~~

java代码运行10次的时间

此方法为 Java 内置的方法,使用 System.currentTimeMillis 来执行统计的时间(统计单位:毫秒)(统计单位:毫秒),示例代码如下:

public class TimeIntervalTest {

public static void main(String[] args) throws InterruptedException {

// 开始时间

long stime = System.currentTimeMillis();

// 执行时间(1s)

Thread.sleep(1000);

// 结束时间

long etime = System.currentTimeMillis();

// 计算执行时间

System.out.printf("执行时长:%d 毫秒.", (etime - stime));

}

}

以上程序的执行结果为:

执行时长:1000 毫秒.

方法二:System.nanoTime

此方法为 Java 内置的方法,使用 System.nanoTime 来统计执行时间(统计单位:纳秒),它的执行方法

计算Java程序执行时间的几种方法

最简单的就是直接获取开始时间、结束时间,计算时间差

public class Demo {

    public static void main(String[] args) {

        long startTime = System.currentTimeMillis();    //获取开始时间

        doSomething();    //测试的代码段

        long endTime = System.currentTimeMillis();    //获取结束时间

        System.out.println("程序运行时间:" + (endTime - startTime) + "ms");    //输出程序运行时间

    }

}

java 如何设定时间执行程序?

import java.util.Calendar;

import java.util.Date;

import java.util.Timer;

import java.util.TimerTask;

public class Test {

public static void main(String[] args) {

//timer1();

timer2();

//timer3();

//timer4();

}

// 第一种方法:设定指定任务task在指定时间time执行 schedule(TimerTask task, Date time)

public static void timer1() {

Timer timer = new Timer();

timer.schedule(new TimerTask() {

public void run() {

System.out.println("-------设定要指定任务--------");

}

}, 2000);// 设定指定的时间time,此处为2000毫秒

}

// 第二种方法:设定指定任务task在指定延迟delay后进行固定延迟peroid的执行

// schedule(TimerTask task, long delay, long period)

public static void timer2() {

Timer timer = new Timer();

timer.schedule(new TimerTask() {

public void run() {

System.out.println("-------设定要指定任务--------");

}

}, 1000, 1000);

}

// 第三种方法:设定指定任务task在指定延迟delay后进行固定频率peroid的执行。

// scheduleAtFixedRate(TimerTask task, long delay, long period)

public static void timer3() {

Timer timer = new Timer();

timer.scheduleAtFixedRate(new TimerTask() {

public void run() {

System.out.println("-------设定要指定任务--------");

}

}, 1000, 2000);

}

// 第四种方法:安排指定的任务task在指定的时间firstTime开始进行重复的固定速率period执行.

// Timer.scheduleAtFixedRate(TimerTask task,Date firstTime,long period)

public static void timer4() {

Calendar calendar = Calendar.getInstance();

calendar.set(Calendar.HOUR_OF_DAY, 12); // 控制时

calendar.set(Calendar.MINUTE, 0); // 控制分

calendar.set(Calendar.SECOND, 0); // 控制秒

Date time = calendar.getTime(); // 得出执行任务的时间,此处为今天的12:00:00

Timer timer = new Timer();

timer.scheduleAtFixedRate(new TimerTask() {

public void run() {

System.out.println("-------设定要指定任务--------");

}

}, time, 1000 * 60 * 60 * 24);// 这里设定将延时每天固定执行

}

}