try Seize Zone
open suspend fun trySeizeZone(space: GuidedPathSpace, zone: Zone, queue: HoldQueue, requestPriority: Int = QUEUE_PRIORITY, suspensionName: String? = null): ZoneAllocation?(source)
Takes one zone unless it is already promised to another holder, in which case: null.
trySeizeZones with one zone. Null means an overlap -- another closure has been promised this zone and has not yet been granted it -- and is a question for the model rather than a failure. A zone another holder merely holds is not an overlap: this waits for the hold to end exactly as seizeZone would.
Return
the hold, or null when the zone is already promised to another holder
Parameters
space
the guide path whose space is wanted
zone
the zone to take, which must be on that guide path
queue
where to wait while it drains
request Priority
orders this entity against others queued at the same instant
suspension Name
names this suspension point when a process has several