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

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

java volatile synchronized關(guān)鍵字使用問題

java volatile synchronized關(guān)鍵字使用問題

繁星coding 2019-01-16 20:17:46
題目描述 在學(xué)習(xí)多線程的知識(shí),下面的代碼跑出的結(jié)果與預(yù)想的不一致,看不明白問題出在哪里,麻煩大家?guī)兔纯?題目來源及自己的思路 我想的是程序結(jié)束后staticv的值是個(gè)整數(shù)200000,但是每次結(jié)果都在19xxxxxxx,離的很近,又不像同步出了問題,不知是哪里出了問題,另外代碼注釋標(biāo)注為#的位置,foo被synchronized標(biāo)志,那同步的是SyncObj的實(shí)例對(duì)象而不是SyncObjc.class,明明是兩個(gè)實(shí)例對(duì)象在被調(diào)用沒有加同步,我以為volatile沒加上去結(jié)果是錯(cuò)誤的,但執(zhí)行的結(jié)果好像沒區(qū)別,為什么?我不清楚我的理解哪里出了問題,請(qǐng)大家多多指教,謝謝。 相關(guān)代碼 package concurrency; import java.util.concurrent.CountDownLatch; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.TimeUnit; public class SynchronizedTest { public static void main(String[] args) throws InterruptedException { ExecutorService executor = Executors.newCachedThreadPool(); SyncObj obj1 =new SyncObj(); SyncObj obj2 =new SyncObj(); CountDownLatch countDownLatch = new CountDownLatch(20); for(int i=0;i<10;i++) { executor.execute(new TT(obj1,countDownLatch)); executor.execute(new TT(obj2,countDownLatch)); } countDownLatch.await(); System.out.println("result----------------------"+SyncObj.staticv); } } class SyncObj { public static volatile int staticv = 0; //######volatile是不是可有可無? public synchronized void foo() { for(int i=0;i<1000;i++) { System.out.println(staticv); staticv++; } } } class TT implements Runnable{ public CountDownLatch countDownLatch; public SyncObj obj; public TT( SyncObj obj,CountDownLatch countDownLatch) { this.obj=obj; this.countDownLatch = countDownLatch; } @Override public void run() { for(int i=0;i<100;i++) { obj.foo(); } countDownLatch.countDown(); } }
查看完整描述

3 回答

?
largeQ

TA貢獻(xiàn)2039條經(jīng)驗(yàn) 獲得超8個(gè)贊

弄明白了,非常感謝

查看完整回答
反對(duì) 回復(fù) 2019-02-12
  • 3 回答
  • 0 關(guān)注
  • 385 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號(hào)

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