BlockingResourcePoolUsage

constructor(resourcePool: ResourcePoolWithQ, amountNeeded: Int = 1, seizePriority: Int = SEIZE_PRIORITY, delayDuration: Double, delayPriority: Int = DELAY_PRIORITY, name: String? = null)


constructor(resourcePool: ResourcePool, amountNeeded: Int = 1, seizePriority: Int = SEIZE_PRIORITY, delayDuration: Double, delayPriority: Int = DELAY_PRIORITY, queue: RequestQ, name: String? = null)

Parameters

amountNeeded

the number of units of the resource needed for the request. The default is 1 unit.

resourcePool

the resource from which the units are being requested.

seizePriority

the priority of the request. This is meant to inform any allocation mechanism for requests that may be competing for the resource.

delayDuration

, the length of time required before the process continues executing, must not be negative and must be finite.

delayPriority

, since the delay is scheduled, a priority can be used to determine the order of events for delays that might be scheduled to complete at the same time.

queue

the queue that will hold the entity if the amount needed cannot immediately be supplied by the resource. If the queue is priority based (i.e. uses a ranked queue discipline) the user should set the entity's priority attribute for use in ranking the queue prior to the calling use.