El algoritmo de Huang es un algoritmo para detectar la terminación en un sistema distribuido . El algoritmo fue propuesto por Shing-Tsaan Huang en 1989 en Information Processing Letters . [1]
La base de la detección de terminación se encuentra en el concepto de estado de un proceso de un sistema distribuido. En cualquier momento, un proceso de un sistema distribuido puede estar en un estado activo o en un estado inactivo. Un proceso activo puede volverse inactivo en cualquier momento, pero un proceso inactivo solo puede volverse activo nuevamente al recibir un mensaje computacional.
La terminación ocurre cuando todos los procesos del sistema distribuido quedan inactivos y no hay mensajes computacionales en tránsito.
El algoritmo de Huang se puede describir de la siguiente manera:
Algunas debilidades del algoritmo de Huang son que no puede detectar la terminación si un mensaje se pierde en tránsito o si un proceso falla mientras está en un estado activo.