A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© bin393973282 中级黑马   /  2015-1-6 18:47  /  712 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. package thread;

  2. public class Accumulator extends Thread {
  3.         private int stratNum;
  4.         public static int sum;

  5.         public Accumulator(int startNum) {
  6.                 this.stratNum = startNum;
  7.         }

  8.         public static synchronized void add(int num) {
  9.                 sum += num;
  10.         }

  11.         public void run() {
  12.                 int sum = 0;
  13.                 for (int i = 0; i < 10; i++) {
  14.                         sum += stratNum + i;
  15.                 }
  16.                 add(sum);
  17.         }

  18.         public static void main(String[] args) throws Exception {
  19.                 Thread[] threadList = new Thread[10];
  20.                 for (int i = 0; i < 10; i++) {
  21.                         threadList[i] = new Accumulator(10 * i + 1);
  22.                         threadList[i].start();
  23.                 }
  24.                 for (int i = 0; i < 10; i++) {
  25.                         threadList[i].join();
  26.                 }
  27.                 System.out.println("Sum is : " + sum);
  28.         }
  29. }
复制代码

原来线程还可以这样,我把东西都学死了。

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马