public void awake() 
	{
		synchronized (this) 
		{
			// Continue to loop until all blockers have exited their section.
			while (holds.get() > 0) 
			{
				// Awake all blockers!
				blockers.proxy().awake();
				
				// Wait at most 1 millisecond or for a notification.
				try {
					this.wait(1);
				} catch (Exception e) {
				}
			}
		}
	}