⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 thread_monitor.java

📁 this gcc-g++-3.3.1.tar.gz is a source file of gcc, you can learn more about gcc through this codes f
💻 JAVA
字号:
// Test that monitor locks work and are recursive.// Origin: Bryce McKinlay <bryce@albatross.co.nz>class T implements Runnable{  public int count = 0;  Counter c;    public T (Counter c)  {    this.c = c;  }  public void run()  {    while (true)      {        // NOTE: double-synchronization here.	synchronized (c)	{	  if (c.getCount() <= 100000)	    count++;	  else	    break;	}      }  }}class Counter{  int i = 0;  public synchronized int getCount ()  {    return ++i;   }}public class Thread_Monitor{  public static void main(String args[])  {    Counter c = new Counter();    T t1 = new T(c);    T t2 = new T(c);        Thread th1 = new Thread(t1);    Thread th2 = new Thread(t2);    th1.start();    th2.start();    try    {      th1.join();      th2.join();    }     catch (InterruptedException x)    {      System.out.println("failed: Interrupted");    }    if (t1.count + t2.count == 100000)      System.out.println ("ok");    else      System.out.println ("failed: total count incorrect");  }}

⌨️ 快捷键说明

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