Sincronización

El problema de la sincronización de hilos tiene lugar cuando varios hilos intentan acceder al

mismo recurso o dato. A la hora de acceder a datos comunes, los hilos necesitan establecer

cierto orden, por ejemplo en el caso del productor consumidor. Para asegurarse de que hilos

concurrentes no se estorban y operan correctamente con datos (o recursos) compartidos, un

sistema estable previene la inanición y el punto muerto o interbloqueo. La inanición tiene lugar

cuando uno o más hilos están bloqueados al intentar conseguir acceso a un recurso compartido

de ocurrencias limitadas. El interbloqueo es la última fase de la inanición; ocurre cuando uno o

más hilos están esperando una condición que no puede ser satisfecha. Esto ocurre muy

frecuentemente cuando dos o más hilos están esperando a que el otro u otros se desbloquee,

respectivamente.

A continuación se presenta un ejemplo, el problema del Productor/Consumidor, con la

intención de explicar de una forma más práctica el concepto y las situciones de sincronización

de hilos.

MARTIN TAPIA GOMEZ TEC DE ZITACUARO