课堂编程实践
编写10个线程,第一个线程从1加到10,第二个线程从11加到20,....第10个线程从99加到100,组后再把10个线程的结果相加。
- public class Accumulator extends Thread {
- private int startNum;
- public static int sum;
- public Accumulator(int startNum) {
- this.startNum=startNum;
- }
- public static synchronized void add(int num) {
- sum+=num;
- //System.out.println(sum);
- }
- public void run() {
- int sum=0;
- for(int i=0;i<10;i++) {
- sum+=startNum+i;
- //System.out.println(sum);
- }
- add(sum);
- }
- public static void main(String[]args) throws Exception{
- int count=10;
- Thread []threadList=new Thread[count];
- for(int i=0;i
- threadList[i]=new Accumulator(10*i+1);
- threadList[i].start();
- }
- for(int i=0;i
- threadList[i].join();
- }
- System.out.println("Sum is:"+sum);
- }
- }
运行结果:
Sum is:5050
-
相关阅读:
东八区先生的AI公司有多离谱?
ChatGPT4实现前一天
数据库、计算机网络,操作系统刷题笔记7
网络安全中运维基础程序设计语言有哪些?
java - 寻找一个值的二分查找、寻找左/侧边界的二分查找总结
HCIP学习--扩展知识点
CSS之排列系列--顶部导航栏ul、li居中展示的方法
PPP协议和MAC地址、IP地址及ARP协议三者之间的关系(3.2)
Pinyin4j介绍和简单使用
2021年中国大学生程序设计竞赛女生专场-ADGIK
-
原文地址:https://blog.csdn.net/m0_65594779/article/details/128147773