大家帮我看看这么计算程序代码执行的时间为什么不准确呢,
public class Thh {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
long d1=java.util.Calendar.getInstance().getTime().getTime();
Thh t=new Thh();
Inner in=t.new Inner();
Thread tt=new Thread(in);
tt.start();
long d2=java.util.Calendar.getInstance().getTime().getTime();
System.out.println( "程序执行所用的时间为: "+(d2-d1));
}
class Inner implements Runnable{
public void run(){
for(int i=0;i <100;i++){
System.out.println(i);
System.out.println(Thread.currentThread().getName());
}
}
}
}
我把循环的次数由10改成100,为什么输出来的执行时间都是10呢
------解决方案--------------------10次和100次差别不大
------解决方案--------------------如果要明显,可以这样
for(int i=0;i <100;i++){
System.out.println(i);
Thread.sleep(100);
System.out.println(Thread.currentThread().getName());
}
------解决方案--------------------循环是在另外一个线程里面进行运算,无论你循环多少便,主线程还是一样的。。。