Log.log(Log.DEBUG,this,"Adding request: " + run + (inAWT ? " in AWT thread" : ""));
	public void addWorkRequest(Runnable run, boolean inAWT)	{		Log.log(Log.DEBUG,this,"Adding request: " + run +			(inAWT ? " in AWT thread" : ""));		// if inAWT is set and there are no requests		// pending, execute it immediately		if(requestCount == 0 && inAWT)		{			Log.log(Log.DEBUG,this,"AWT immediate: " + run);			run.run();			return;		}		synchronized(lock)		{			Request request = new Request(run,inAWT);			if(firstRequest == null && lastRequest == null)				firstRequest = lastRequest = request;			else			{				lastRequest.next = request;				lastRequest = request;			}			requestCount++;			lock.notify();		}	}