赞
踩
import java.sql.Date;
public class c extends Thread{
private int ID;
static int sum11;
static int sum1;
static int sum2;
static int sum;
public boolean m_done;
/**
* @param args
*/
static int [] a=new int[10005];
static int n;
public static long solve1()
{
long d1=System.nanoTime();
sum11=0;
for(int i=1;i<=n;i++)
sum11+=a[i];
long d2=System.nanoTime();
return d2-d1;
}
public static void read()
{
n=(int) (Math.abs((10+Math.random()*1000))%10000);
for(int i=1;i<=n;i++)
a[i]=(int) Math.abs((0+Math.random()*1000));
}
public c(int i)
{
ID=i;
}
public void run()
{
m_done=false;
int i;
if(ID==1)
{
System.out.println(1);
for(i=1;i<=n/2;i++)
sum1+=a[i];
}
if(ID==2)
{
System.out.println(2);
for(i=n/2+1;i<=n;i++)
sum2+=a[i];
}
m_done=true;
}
public static long solve2()
{
long d1=System.nanoTime();
sum1=0;sum2=0;sum=0;
c t1=new c(1);
c t2=new c(2);
t1.m_done=false;
t2.m_done=false;
t1.start();
t2.start();
while(!t1.m_done||!t2.m_done) ;//等待进程结束
sum=sum1+sum2;
long d2=System.nanoTime();
return d2-d1;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
read();
long t1=solve1();
System.out.println(sum11 +" "+"非线程时间:"+t1);
long t2=solve2();
//System.out.println(sum1+" "+sum2);
System.out.println(sum+" "+"线程时间:"+t2);
}
}
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。