多執行緒買票

2021-10-08 07:54:02 字數 881 閱讀 9261

開啟多個售票視窗同時進行火車票的售賣

多執行緒賣票

前置條件:

設定總票數 ,比如20張

開啟多個售票視窗同時進行火車票的售賣 (這裡多個視窗代表 多執行緒. 代表啟動了多少個執行緒物件)

怎麼賣票 ? 借助迴圈 重複賣票動作  ,使用 while死迴圈

每賣出1張 ,總票數 -- 操作 .

什麼時候退出迴圈?

發現賣完了,退出迴圈

開啟執行緒 ,執行 run方法內部邏輯

單執行緒賣票 ,是沒問題的 .多執行緒賣票,就出現了併發問題 要解決該問題 ,需要使用"同步操作"

synchronized() 括弧內部是 同步鎖物件 .

為什麼加了synchronized ,就可以解決剛才問題 ....

package com.cpd.work;

/** * 三個視窗同時賣票 用 實現runnable方式

*/package com.cpd.work;

/** * 三個視窗同時賣票 用 實現runnable方式

多執行緒之買票問題

package com.lyon.controller public class testthread2 implements runnable try catch interruptedexception e system.out.println thread.currentthread getn...

多執行緒實現買票功能

方法一 public class sellticket extends thread sellticket sellticket1 new sellticket sellticket sellticket2 new sellticket sellticket sellticket3 new sell...

java多執行緒 買票 ticket 實驗

package org.sh.diffdemo public class mythread extends thread package org.sh.diffdemo public class threadticket 發現結果買了十張票 但是只有五張票,沒有達到共享資源的目的 下面使用實現run...