public class TestMethodStack {
static class CalcThread1 extends Thread
{
public void run()
{
long start=System.currentTimeMillis();
int count=0;
run1(count);
System.out.println("cost time1:"+(System.currentTimeMillis()-start)+"ms");
}
}
static class CalcThread2 extends Thread
{
public void run()
{
long start=System.currentTimeMillis();
int count=0;
run2(count);
System.out.println("cost time2:"+(System.currentTimeMillis()-start)+"ms");
}
}
public static void main(String[] args) {
for (int i = 0; i < 20; i++) {
if(i%2==0)
{
CalcThread1 t1=new CalcThread1();
t1.start();
}else
{
CalcThread2 t2=new CalcThread2();
t2.start();
}
}
}
public static void run1(int count)
{
for (int i = 0; i < 1000000000; i++) {
if(i>1000000)
{
count++;
}else
{
count--;
}
}
}
public static void run2(int count)
{
for (int i = 0; i < 1000000000; i++) {
if(i>1000000)
count++
;
else
count--;
}
}
}
测试结果:
cost time1:5931ms
cost time1:6179ms
cost time1:6171ms
cost time1:6126ms
cost time2:6323ms
cost time1:6422ms
cost time1:6415ms
cost time2:6429ms
cost time2:6404ms
cost time2:6422ms
cost time2:6630ms
cost time2:6557ms
cost time2:6597ms
cost time2:6682ms
cost time2:6684ms
cost time1:6598ms
cost time2:6629ms
cost time1:6710ms
cost time1:6692ms
cost time1:6849ms