El lenguaje de programación Java permite a los programadores escribir código que se ejecutará en paralelo sobre diferentes temas . Si el equipo tiene más de un núcleo de procesador, los hilos realmente se ejecutarán en paralelo , de lo contrario , el procesador puede multiplexar sobre temas ejecutables . Cuando varios subprocesos operan en el mismo recurso compartido , el código resultante sólo puede ser correcta si sólo un hilo a la vez opera en ese recurso. Están garantizados métodos sincronizados para preservar esta propiedad: en un momento dado , a lo sumo, una instancia de un método sincronizado se permite el uso del recurso. Instrucciones
1
Declarar una clase aparte que contendrá código sincronizado , como en el siguiente ejemplo de código:
SynchronizationExample public class () { }
Página 2
Declare el recurso compartido como miembro de la clase "privado" , como en el siguiente ejemplo de código:
SynchronizationExample clase pública () {
privado AccountBalance int = 0 ;
}
3
Declarar los métodos que operan sobre el recurso compartido mediante el uso de la palabra clave " sincronizado " , como en el siguiente ejemplo de código:
SynchronizationExample clase pública () {
privado AccountBalance int = 0 ; pública
sincronizado depósito vacío (int cantidad ) {
AccountBalance = AccountBalance + cantidad ;
< p >}
public synchronized void retirada (int cantidad ) {
AccountBalance = AccountBalance - cantidad ;
}
}
Desde están sincronizados , los métodos de "depósito " y "retirada " no se ejecutarán en paralelo , y si uno tiene que empezar cuando el otro está ejecutando , que tendrán que esperar hasta que el primero en comenzar ultima . Esto hace que las modificaciones a los recursos " AccountBalance " thread-safe compartido.