SynchronizedVector.java
上传用户:njled888
上传日期:2007-01-07
资源大小:29k
文件大小:1k
源码类别:

游戏

开发平台:

Java

  1. /*
  2.  * @(#)SynchronizedVector.java Version 1.0 98/03/12
  3.  * 
  4.  * Copyright (c) 1998 by Huahai Yang
  5.  * 
  6.  * Use at your own risk. I do not guarantee the fitness of this 
  7.  * software for any purpose, and I do not accept responsibility for 
  8.  * any damage you do to yourself or others by using this software.
  9.  * This file may be distributed freely, provided its contents 
  10.  * are not tampered with in any way.
  11.  *
  12.  */
  13. import java.util.Vector;
  14. /**
  15.  * A vector to store the found solution, if solution not available yet,
  16.  * the access method will wait here until the solution become available
  17.  */
  18. public class SynchronizedVector
  19. {
  20.    private Vector vector;
  21.    private boolean available;
  22.    
  23.    public SynchronizedVector()
  24.    {
  25.       vector = new Vector();
  26.       available = false;
  27.    } // constructor   
  28.    public synchronized Vector get() 
  29.    {
  30.       while (available == false) 
  31.       {
  32.          try 
  33.          {
  34.             wait();
  35.          } //try
  36.          catch (InterruptedException e) 
  37.          { 
  38.          } //catch
  39.       } //while
  40.       notifyAll();
  41.       return vector;
  42.     } // get
  43.     public synchronized void put(Vector vector) 
  44.     {
  45.         this.vector = vector;
  46.         available = true;
  47.         notifyAll();
  48.     } //put
  49. }  // SynchronizedVector
  50.