VademécumVademécum\synchronized (palabra reservada)synchronized (palabra reservada)\Métodos sincronizados

Métodos sincronizados

Si en una clase varios métodos se marcan como sincronizados, sólo se permitirá 1 thread accediendo a alguno de los métodos marcados en cada momento

public class … {

public synchronized ... metodo1(...) { ... }

public synchronized ... metodo2(...) { ... }

}

 

Sólo 1 thread puede acceder en cada momento al método 1 o al método 2.

Técnicamente, cada método lo que hace es rodear su cuerpo de sentencias con una sincronización sobre el propio objeto:

public … metodo1(…)

synchronized(this) {

      

}

}

 

Ver “monitores”.

principio