中易网

java中线程不同步输出结果的问题

答案:2  悬赏:30  
解决时间 2021-02-26 18:46
}catch(InterruptedException e){} /
public void add(int save){
try{Thread.currentThread(),都是两个400.start(),两个500之类的。这个结果有一个400,500我能理解。但是两个数没有600;
t2,本来我感觉这个程序没有线程安全方面的问题;+b;/.start()。
我想问一下?
class Bank
{
int money,所以就输出400,最后也应该是存6次啊;
}
}

class SavePerson implements Runnable
{
Bank b = new Bank();
t1,但是加了延时作用的语句之后,这是为什么,只存了一次或者两次,即使因为延时的作用.sleep(10);
Thread t2 = new Thread(s1); i<3; i++)
b;
Thread t1 = new Thread(s1);
System;
}
}

class SaveMoneyTow
{
public static void main(String[] args)
{
SavePerson s1 = new SavePerson();---",500了.money).out。为什么输出的结果里很多都没有600.getName()+"代码如下,两个线程执行run方法之后输出的两个数里没有600.println(Thread.add(100),然后往账户里面存钱;

public void run(){
for(int i=0,说明最后没存上6次;延时作用的语句
money = money + save,可能另一个线程还没有存完,一次存100存3次,定义一个银行账户类
最佳答案
了解下Java内存模型,你就知道了。解决简单,在add(int save)上加synchronize关键字就可以了
全部回答
把“object o=new object();”改成“static object o=new object();”
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
房地产拓客在派单过程中有哪些不足之处
民权县华升商贸有限公司地址有知道的么?有点
小芹布店地址在什么地方,想过去办事
这个手机像素到底好不好OPPOR9普莱斯拍的
军校与地方211大学哪个更有发展前途? 在高考
1. Li Ming is one of ______(clever)boys in
有没有玩LOL的警察
我跟我朋友去杭州玩,两张上海的电话卡,在杭
有几家药店,其中一家涉嫌消售假药其他店受影
庆乐快餐怎么去啊,有知道地址的么
中年妇女 又黑又瘦 夏季穿什么衣服有气质
淘宝加盟了一家供货商有人来买衣服了我怎么发
什么叫完全相消干涉
曼秀雷敦的薄荷膏可以提神吗?
蜻,蜓这两个字怎么组词
推荐资讯
水浸洞这个地址在什么地方,我要处理点事
面试时遇到这样的问题:“你希望和怎样的上司
白人 中国人 哪个体毛多?
电影拍摄首先做什么
张庭老公说,我这么大年纪了,只长白头发,不
什么牌子的白米醋好哪里买?
怎样在相亲时增加自己的自信心?
C语言一道题目,谁能帮我解得……
深圳大学那里有免费的自习教室吗?
义信大药店在哪里啊,我有事要去这个地方
Linux Kernel是什么
英菲克i9八核网络播放器,支持pdf后缀名的视
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?