#Java编程# 设计两个线程对象对同一数据进行操作,一个线程执行减减操作,一个线程执行加加操作

#Java编程#设计两个线程对象对同一数据进行操作,一个线程执行减减操作,一个线程执行加加操作。(注意:每个线程的循环操作100次)... #Java编程#

设计两个线程对象对同一数据进行操作,一个线程执行减减操作,一个线程执行加加操作。(注意:每个线程的循环操作100次)
展开
 我来答
tonylinzhen
2016-06-13 · TA获得超过1368个赞
知道小有建树答主
回答量:997
采纳率:50%
帮助的人:397万
展开全部

import java.io.IOException;

import java.util.concurrent.atomic.AtomicInteger;


public class TestThread {

public static void main(String[] args) throws IOException, InterruptedException {


final AtomicInteger number = new AtomicInteger(0);// 起始的数字 0


Thread jiaFa = new Thread(new Runnable() {

@Override

public void run() {

for (int i = 0; i < 100; i++) {

System.out.println("当前进程:加法线程 处理前数字:" + number + ",处理后数字:" + (number.incrementAndGet()));

}

}

});


Thread jianFa = new Thread(new Runnable() {

@Override

public void run() {

for (int i = 0; i < 100; i++) {

System.out.println("当前进程:减法线程 处理前数字:" + number + ",处理后数字:" + (number.decrementAndGet()));

}

}

});


jiaFa.start();

jianFa.start();


jiaFa.join();

jianFa.join();


System.out.println("最终数字结果:" + number);

}


}

使用atomic包下的多线程类型对象能天生的解决多线程带来的安全问题,而且性能非常好

扣号471076009
2016-06-03 · 超过12用户采纳过TA的回答
知道答主
回答量:197
采纳率:0%
帮助的人:31.9万
展开全部
OK,我发给你.
追问
好的  谢谢
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式