zoukankan      html  css  js  c++  java
  • JAVA多线程编程

    比较JAVA中多线程编程与单线程编程的运行时间(效率)的差异

    代码:

    package thread;

    public class j extends Thread

    {

    private int a[];

    j(int b[])

    {

    a=new int[b.length];

    int len=b.length;

    for(int i=0;i<len;i++)a[i]=b[i];

    }

    public void run()

    {

    int sum=0;

    for(int i=0;i<a.length;i++)sum+=a[i];

    System.out.println("一共相加了"+a.length+"");

    }

    public static void main(String args[])

    {

    long t1=System.currentTimeMillis();

    System.out.println(t1);

    int n=0;

    while(n<1000000)

    {n=(int)(Math.random()*10000000);}

    int a[]=new int[n];

    for(int i=0;i<n;i++)a[i]=(int)Math.random()*100;

    j j1=new j(a);

    try

    {

    j1.start();

    long t2=System.currentTimeMillis();

    System.out.println(t2);

    long t=t2-t1;

    System.out.println("单线程计算所需时间是"+t);

    }

    catch(Exception e)

    {

    e.printStackTrace();

    }

    int b[]=new int[a.length/2];

    for(int i=0;i<b.length;i++)b[i]=a[i];

    int c[]=new int[a.length-b.length];

    for(int i=0;i<c.length;i++)c[i]=a[b.length+i];

    long t3=System.currentTimeMillis();

    System.out.println(t3);

    j j2=new j(b);j j3=new j(c);

    try

    {

    j2.start();j3.start();

    long t4=System.currentTimeMillis();

    System.out.println(t4);

    System.out.println("双线程计算所需时间是"+(t4-t3));

    }

    catch(Exception e)

    {

    e.printStackTrace();

    }

    }

    }

    运行结果:

     

  • 相关阅读:
    mac 下安装jenkins
    Appium元素定位难点:tap坐标定位不准确
    Appium元素定位难点:混合式的native+webview
    Linux 上安装 appium
    springMVC之AOP
    设计模式之装饰模式
    设计模式之桥接模式
    MyBatis特殊字符转义
    python+urllib+beautifulSoup实现一个简单的爬虫
    设计模式之代理模式
  • 原文地址:https://www.cnblogs.com/linruier/p/7247535.html
Copyright © 2011-2022 走看看