Class 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 Detail

      • KDiscreteResource

        protected KDiscreteResource​(long cPtr,
                                    boolean cMemoryOwn)
      • KDiscreteResource

        public KDiscreteResource​(KSchedule s,
                                 java.lang.String name,
                                 int initialCapacity,
                                 int propagation)
        Constructor

        Parameters:
        s - the schedule
        name - name for this resource
        initialCapacity - Initial capacity for the resource (positive or zero)
        propagation - propagation scheme @see KDiscreteResource#PropagationHint
      • KDiscreteResource

        public KDiscreteResource​(KSchedule s,
                                 java.lang.String name,
                                 int initialCapacity)
        Constructor

        Parameters:
        s - the schedule
        name - name for this resource
        initialCapacity - Initial capacity for the resource (positive or zero)
        See Also:
        KDiscreteResource#PropagationHint