synthreadexam2.java

来自「Java程序设计实用教程源代码 本书源代码按章分别放置在不同的文件夹中,所有程」· Java 代码 · 共 37 行

JAVA
37
字号

class TicketThread2
    implements Runnable {
  private static int tickets = 10;

  public void run() {
    boolean bSale = true;
    while (bSale) {
      bSale = sale();
    }
  }

  public synchronized boolean sale() {
    if (tickets > 0) {
      try {
        Thread.sleep(100);
      }
      catch (Exception e) {
        System.err.println(e.getMessage());
      }
      System.out.println(Thread.currentThread().getName() + " is saling " +
                         tickets--);
      return true;
    }
    else
      return false;
  }
}

public class SynThreadExam2 {
  public static void main(String[] args) {
    TicketThread2 t = new TicketThread2();
    for (int i = 0; i < 4; i++) {
      new Thread(t).start();
    }
  }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?