下文笔者讲述使用java代码进行多线程累计求和的方法分享,如下所示:
实现思路:
创建一个类,定义一个公共变量,并且每一个线程都可以访问
所有线程都可以对coun递增,直到1000
例:
public class Test {
//公共变量
int count=0;
public static void main(String[] args){
//new一个实现Runnable的类
Test test=new Test();
//创建3个任务
MyRunnable myRunnable1=test.new MyRunnable();
MyRunnable myRunnable2=test.new MyRunnable();
MyRunnable myRunnable3=test.new MyRunnable();
//创建3个线程
new Thread(myRunnable1).start();
new Thread(myRunnable2).start();
new Thread(myRunnable3).start();
}
//创建一个实现Runnable的类
class MyRunnable implements Runnable{
public void run() {
while(true){
//锁住的是整个MyRunnable类
synchronized(MyRunnable.class){
if(count>=1000){
break;
}
System.out.println(Thread.currentThread().getName()+":count:"+(++count));
//测试时,线程更容易切换
Thread.yield();
}
}
}
}
}
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。


