Java多线程求和有些时候在使用的时候需要我们特别注意,下面我们就来详细的看看如何才能更好的进行Java多线程求和相关的编写。看完下面的文章希望大家有所收获。
编写一个启动100个线程的程序,每个线程给一个初值为0的变量sum加1,需要通过引用每一个线程来传递sum,为了通过饮用传递,定义一个Integer包装对象以容纳sum,分别设计同步和不同步方式的方法设计程序并查看结果。
- public class Test implements Runnable {
- public static void main(String[] args) {
- for (int i = 0; i < 100; i++) { // 创建100个线程
- Test line = new Test();
- Thread t = new Thread(line, i + "");
- t.start();
- }
- }
- public void run() { // 线程
- for (int i = 0; i < 10; i++) { //每条线程输出的次数 如果你是10次 100个线程,如果同步,sum 应该是1000
- try {
- sum.list();
- Thread.sleep(100);
- } catch (InterruptedException e) {
- e.printStackTrace();
- }
- }
- }
- }
- class sum {
- static Integer sum = 0;
- public synchronized static void list() { //synchronized 代表线程同步, 如果去掉.就会不同步
- sum++;
- System.out.println("我是线程" + Thread.currentThread().getName()
- + " sum--------->" + sum);
- }
- }
以上就是对Java多线程求和相关代码的介绍。
【编辑推荐】