- - - - CENAPAD-MGCO

A seguir: Terceira questão Acima: Segunda questão Anterior: Classe BridgeSynchronizer


Classes Request e BridgeQueue

class Request
{
    ProcessId client;
    int direcao;
}

class BridgeQueue
{
   Queue q; // Fila FIFO com os metodos top, pop e push

    Request getRequest(ProcessId client, int direcao)
    {
        Request rq = new Request(client, direcao);
        q.push(rq);
        return rq;
    }

    void ok(Request rq)
    {
        if (rq != q.pop())
           ERRO!;
    }

    Request top()
    {
        return ((Request) q.top());
    }

    boolean isTheBest(Request rq)
    {
        if (q.top() != null)
        {
            return (rq == top());
        }
        return true;
    }
}



Osvaldo Carvalho - Postscript - Comentários?