第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

接口在線程中的安全性問題如何解決?

接口在線程中的安全性問題如何解決?

//這段代碼存在bug,子線程還沒結(jié)束,主線程就調(diào)用了方法,后面的子線程忽然被設(shè)置了100,主線程不會再次調(diào)用,出現(xiàn)了意想不到的結(jié)果 //怎樣才能保證接口在子線程的異步加載,既不去阻塞主線程,又保證子線程的數(shù)據(jù)能及時更新到主線程里 //總體來說這個代碼的bug就是,這個子線程執(zhí)行完畢了,主線程的方法卻沒被再次調(diào)用 public?class?Main2?{ static?String?str?=?"";//?外部內(nèi)存的string public?static?void?main(String[]?args)?{ Info?info?=?new?Info(); threadz?z?=?new?threadz(info); new?Thread(z).start(); ? //?while(Thread.activeCount()>1){ //?Thread.yield();//如果子線程沒結(jié)束完,就讓主線程終止,這種寫法,等于把子線程放在主線程中,無法提高效率,主線程也進(jìn)入未響應(yīng)狀態(tài); //?} info.getStr(new?Result2()?{ @Override public?void?Succes(String?s)?{ str?=?info.num+"--"+s; } @Override public?void?Fail()?{ str?=??info.num+"--失敗"?; } }); System.out.println("響應(yīng)碼"?+?str); } } class?threadz?implements?Runnable?{ Info?info; public?threadz(Info?info)?{ super(); this.info?=?info; } @Override public??void?run()?{ ? //?如果對這個線程進(jìn)行加鎖,那么主線程執(zhí)行了方法,加鎖后這個num默認(rèn)值是0,也不是想要的結(jié)果 //?synchronized?(info)?{ //?try?{ //?info.wait(); //?}?catch?(InterruptedException?e1)?{ //?//?TODO?Auto-generated?catch?block //?e1.printStackTrace(); //?} info.num?=?200; try?{ Thread.sleep(2000); }?catch?(InterruptedException?e)?{ //?TODO?Auto-generated?catch?block e.printStackTrace(); } info.num?=?100; //?info.notifyAll(); //?} } } interface?Result2?{ void?Succes(String?s); void?Fail(); } class?Info?{ Result2?result; int?num; void?getStr(Result2?r)?{ this.result?=?r; if?(num?==?200)?{ r.Succes("成功"); }?else?{ r.Fail(); } } }打印的是:響應(yīng)碼200--成功等待一段時間后,子線程真正的結(jié)束,但是主線程運行的結(jié)果不是想要的結(jié)果
查看完整描述

3 回答

?
qq_慕妹6472843

TA貢獻(xiàn)2條經(jīng)驗 獲得超0個贊

....

查看完整回答
反對 回復(fù) 2017-01-07
  • 3 回答
  • 1 關(guān)注
  • 1940 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號