DeadlockParticipant

constructor(transporterName: String, heldZoneNames: List<String>, awaitedZoneName: String, awaitedZoneReservedFor: String? = null)(source)

Parameters

transporterName

the blocked transporter

heldZoneNames

the zones it occupies or has claimed, ordered rear to front

awaitedZoneName

the zone it cannot claim, which the next participant in the cycle holds

awaitedZoneReservedFor

the holder the awaited zone is reserved for, when it is free and what refuses it is a reservation rather than an occupant. Naming it is the difference between a usable report and a misleading one: without it a modeller reads two vehicles awaiting two zones, goes looking for a head-on vehicle conflict, and finds the zones empty.