Lyras kolega, lamport zapravo uistinu rješava deadlock. Ne trebaju nikakvi random sleepovi. Ako slijediš ispravno algoritam, doći ćeš do toga da će svi recimo imati u svom desnom redu svoju poruku na prvom mjestu, no razlika će se dogoditi upravo između 0. i 4. (ili 1. i 5., ovisi odakle započinješ brojanje) filozofa. Naime, oni će si međusobno poslati zahtjeve (istovremeno, po njihovim satovima), no prevladati će 0. filozof, jer on ima manji id, (odnosno i). Napraviš while petlju koja će biti istinita sve dok se oba zahtjeva filozofa ne pojave na vrhu njegovog reda. On čita poruke svojih susjeda sve dok se taj uvjet u while petlji ne ispuni. Ako uđe u lock u readu, nema veze, jer će zasigurno primiti poruku izlazak svojeg susjeda eventualno. Postupak jedenja se dogodi tek onda kada ima oba štapića na raspolaganju i isključivo samo tada.