synchronized serve para sincronizar o acesso a um recurso que é compartilhado por vários threads.
 
Se uma classe possui métodos declarados como synchronized, dado um objeto desta classe, a cada instante apenas um método synchronized estará sendo executando.
 
Você também pode utilizar a declaração synchronized deste modo:
 
    synchronized (objeto) {
        /* Comandos que devem ser sincronizados */
    }
 
Neste caso dado o objeto, só um thread poderá estar executando um bloco synchronized(objeto).
 
Quando você utiliza synchronized na declaração de um método
 
    public synchronized void X() {
        /* várias declarações */
    }
 
é +- equivalente à
 
    public void X() {
        synchronized (this) {
            /*Várias declarações*/
        }
    }
 
Leonardo.
 
/**
 *   Participe do grupo java_br ([EMAIL PROTECTED])
 *   FAQ: http://www.egroups.com/database/java_br  (Nenhuma resposta ainda! Contribua!)
 *   Links: http://www.egroups.com/links/java_br (Tem um site sobre java em português? Mande o link!)
 *   Contribuições e comentários: [EMAIL PROTECTED]
 */
   
----- Original Message -----
From: Décio
To: java
Sent: Wednesday, November 01, 2000 5:35 PM
Subject: Synchronized

Agradeço se alguém puder me dizer para que serve o comando synchronized, não achei nenhuma referência sobre ele.
========================
Décio Júnior
========================

Responder a