課程
/后端開發(fā)
/Java
/細說多線程之Thread VS Runnable
窗口2買了一張票還剩:3張票
窗口3買了一張票還剩:2張票
窗口3買了一張票還剩:0張票
窗口1買了一張票還剩:3張票
窗口2買了一張票還剩:1張票
2017-05-23
源自:細說多線程之Thread VS Runnable 2-3
正在回答
也是對的,線程執(zhí)行順序是隨機的
public?void?run()?{ //?TODO?Auto-generated?method?stub while(true){ synchronized(lockObj){ if(ticketsNum>0){ ticketsNum--; System.out.println(Thread.currentThread().getName()+"賣出一張票,剩余"+ticketsNum); //Thread.yield(); lockObj.notifyAll(); } } } }
這樣改就能按順序輸出了
我懂了 ? 同時運行的 ? 兩個線程都在買票 ??
檸檬醬c
多運行幾次 ?偶爾是這個結(jié)果:
窗口1買了一張票還剩:4張票
窗口1買了一張票還剩:2張票
窗口1買了一張票還剩:1張票
窗口1買了一張票還剩:0張票
舉報
認識Thread和Runnable的區(qū)別,以及使用jstack生成線程快照
4 回答這個結(jié)果該如何分析呢?有兩個剩余票數(shù)為2
5 回答那這種情況又該怎么解釋?
2 回答打印出六條結(jié)果
1 回答打印的結(jié)果是亂的,要怎么才能使結(jié)果正確顯示呢?
4 回答執(zhí)行結(jié)果跟視頻完全不一樣
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學習伙伴
掃描二維碼關注慕課網(wǎng)微信公眾號
2018-05-21
也是對的,線程執(zhí)行順序是隨機的
2017-12-11
這樣改就能按順序輸出了
2017-05-23
我懂了 ? 同時運行的 ? 兩個線程都在買票 ??
2017-05-23
多運行幾次 ?偶爾是這個結(jié)果:
窗口1買了一張票還剩:4張票
窗口1買了一張票還剩:3張票
窗口1買了一張票還剩:2張票
窗口1買了一張票還剩:1張票
窗口1買了一張票還剩:0張票