Threads ... pool de conexão.... deixar o cara esperando

1 resposta
T

Como que eu faço isso ai com threads???

o processo e simples... quero q se não tiver conexão... o cidadão que me pediu a conexão espere a ter ter uma ...

public synchronized Connection getConnection() 
	{
		if (conns.isEmpty()){wait();}
		return (Connection)conns.getFirst();
	}
	
	public synchronized void putConnection(Connection conn)
	{
		conns.addLast(conn);
		notify();
	}

sei q assim naum funciona... mas como é q faz...

Ps.: to morrendo de sono

1 Resposta

T

bom... eu to tentando assim

private LinkedList conns = null;
	private Object sleep = null;
	public synchronized Connection getConnection(Object request) 
	{
		try {
			synchronized(request) {
				if (conns.isEmpty())
				{
					sleep = request;
					sleep.wait();
				}
			}
			return (Connection)conns.getFirst();
		} catch (Exception ex){}
		return null;
	}
	
	public synchronized void putConnection(Connection conn)
	{
		conns.addLast(conn);
		if (sleep != null){
			sleep.notify();
			sleep = null;
		}
		
	}
Criado 2 de abril de 2004
Ultima resposta 2 de abr. de 2004
Respostas 1
Participantes 1