Class KDiscreteResource

java.lang.Object
com.artelys.kalis.KResource
com.artelys.kalis.KDiscreteResource

public class KDiscreteResource extends KResource
Discrete resource

A discrete resource can process several tasks at the same time.

The following schema shows an example with three tasks A,B and C executing on
a disjunctive resource and on a cumulative resource with resource usage 3 for
task A, 1 for task B and 1 for task C :



Tasks may require, provide, consume and produce resources :
- A task requires a resource if some amount of the resource capacity must be made available for the execution of the activity. The capacity is renewable which means that the required capacity is available after the end of the task.
- A task provides a resource if some amount of the resource capacity is made available through the execution of the task. The capacity is renewable which means that the provided capacity is available only during the execution of the task.
- A task consumes a resource if some amount of the resource capacity must be made available for the execution of the task and the capacity is non-renewable which means that the consumed capacity if no longer available at the end of the task.
- A task produces a resource if some amount of the resource capacity is made available through the execution of the task and the capacity is non-renewable which means that the produced capacity is definitively available after the starting of the task.
  • Constructor Details

    • KDiscreteResource

      protected KDiscreteResource(long cPtr, boolean cMemoryOwn)
    • KDiscreteResource

      public KDiscreteResource(KSchedule s, String name, int stockInit, int propagation)
      Constructor

      Parameters:
      s - the schedule
      name - name for this resource
      stockInit - Initial stock for the resource (positive or null)
      propagation - propagation scheme @see KDiscreteResource#PropagationHint
    • KDiscreteResource

      public KDiscreteResource(KSchedule s, String name, int stockInit)
      Constructor

      Parameters:
      s - the schedule
      name - name for this resource
      stockInit - Initial stock for the resource (positive or null)
      See Also:
      KDiscreteResource#PropagationHint
  • Method Details