cloudsim-plus-master/cloudsim-plus-master/cloudsim-plus/src/main/java/org/cloudbus/cloudsim/schedulers/cloudlet/CloudletSchedulerSpaceShared.java
private double movePausedCloudletToExecListOrWaitingList(CloudletExecutionInfo c) {
        getCloudletPausedList().remove(c);

        // it can go to the exec list
        if (isThereEnoughFreePesForCloudlet(c)) {
            return movePausedCloudletToExecList(c);
        }

        // No enough free PEs: go to the waiting queue
        /*
         * A resumed cloudlet is not immediately added to the execution list.
         * It is queued so that the next time the scheduler process VM execution,
         * the cloudlet may have the opportunity to run.
         * It goes to the end of the waiting list because other cloudlets
         * could be waiting longer and have priority to execute.
         */
        addCloudletToWaitingList(c);
        return 0.0;
    }
/**
     * Moves a Cloudlet that is being resumed to the exec or waiting List.
     *
     * @param c the resumed Cloudlet to move
     * @return the time the cloudlet is expected to finish or zero if it was moved to the waiting list
     */
Moves a Cloudlet that is being resumed to the exec or waiting List.
@param c the resumed Cloudlet to move
@return the time the cloudlet is expected to finish or zero if it was moved to the waiting list
Moves a Cloudlet that is being resumed to the exec or waiting List . @param c the resumed Cloudlet to move @return the time the cloudlet is expected to finish or zero if it was moved to the waiting list
private double movePausedCloudletToExecListOrWaitingList(CloudletExecutionInfo c) {
        getCloudletPausedList().remove(c);
        if (isThereEnoughFreePesForCloudlet(c)) {
            return movePausedCloudletToExecList(c);
        }
        /*
         * A resumed cloudlet is not immediately added to the execution list.
         * It is queued so that the next time the scheduler process VM execution,
         * the cloudlet may have the opportunity to run.
         * It goes to the end of the waiting list because other cloudlets
         * could be waiting longer and have priority to execute.
         */
        addCloudletToWaitingList(c);
        return 0.0;
    }
private double movePausedCloudletToExecListOrWaitingList ( CloudletExecutionInfo c ) { getCloudletPausedList ( ) . remove ( c ) ; if ( isThereEnoughFreePesForCloudlet ( c ) ) { return movePausedCloudletToExecList ( c ) ; } /*
         * A resumed cloudlet is not immediately added to the execution list.
         * It is queued so that the next time the scheduler process VM execution,
         * the cloudlet may have the opportunity to run.
         * It goes to the end of the waiting list because other cloudlets
         * could be waiting longer and have priority to execute.
         */ addCloudletToWaitingList ( c ) ; return 0.0 ; }
Moves a Cloudlet that is being resumed to the exec or waiting List.
Moves a Cloudlet that is being resumed to the exec or waiting List .
// it can go to the exec list // No enough free PEs: go to the waiting queue