Modelado y solución al problema de la cena de los filósofos usando actores, en Go. Se resuelve utilizando el algoritmo de Chandy/Misra
- Para cada par de filosofos adyacentes, se crea un palito sucio asignado al filosofo con menor identificador (esto evita el deadlock)
- Los palitos pueden estar sucios o limpios. Un filosofo solo puede comer si tiene ambos palitos limpios
- Cuando un filosofo quiere un palito, debe solicitarselo al filosofo correspondiente.
- Cuando un filosofo recibe un pedido de un palito, conserva el palito si esta limpio, y lo limpia y lo entrega si esta sucio.
- Despues de que un filosofo haya terminado de comer, todos sus palitos quedan sucios. Si otro filosofo habia solicitado un palito previamente, entonces lo limpia y lo envía