martes, 14 de septiembre de 2010

Como Sincronizar Threads en Java


Una de las características importantes de Java es la posibilidad de realizar tareas de forma concurrente, usando la abstracción Thread, con la ejecución concurrente surge el problema de acceder a recursos compartidos y causar efectos indeseados debido a dicho acceso concurrente, esto se conoce como el problema de la región critica, tenemos un objeto que debe ser usado de forma secuencial, porque su uso concurrente produce resultados indeseados, en la teoría se estudian los algoritmos de Dekker, los semáforos y algunas otras soluciones incluso a nivel de hardware como test&set. En Java el acceso a un objeto puede ser forzado de forma serial, con el uso de métodos sincronizados en este ejemplo, se crean varios Threads accediendo todos a una variable interna protegida por un método de acceso sincronizado, lo que garantiza acceso secuencial.



Descargar Codigo Fuente en JDeveloper