// ------------------------------------------------------------ // The exit protocol is simple: all we have to do is to // increase served_ticket so that the next customer will // be served. // ------------------------------------------------------------ package Communication.MutexProtocols.Ticket; // number of processes macro NumProc = 4; module ExitProtocol(int{NumProc()} served_ticket, bool !done) { next(served_ticket) = served_ticket+1; done = true; next(done) = false; }