假設有兩個窗口合起來要賣100張票,這就涉及到數據共享的問題,故這裏用到了線程同步的知識。
- package xiaojie;
- public class Maipiao {
- public static void main(String[] args) {
- xc xc1=new xc();
- Thread bb=new Thread(xc1);
- bb.start();
- xc xc2=new xc();
- Thread cc=new Thread(xc2);
- cc.start();
- }
- }
- class xc implements Runnable{
- public static int chepiao=100;
- String aa=new String("1");//字符串隨意定義
- @Override
- public void run() {
- while(true){
- synchronized (aa) {//修飾代碼塊(線程同步),也可以修飾函數
- if(chepiao>0){
- System.out.println("第"+Thread.currentThread().getName()+"個窗口正在賣第"+(101-chepiao)+"張票");
- --chepiao;
- }else{
- break;
- }
- }
- }
- }
- } http://blog.csdn.net/qq_32079585/article/details/51548118