private void cpu1() {
        switch (this.getGeneratoreRouting().getNextRoute()) {
            case IO:
                if (this.getIo().isFree()) {
                    this.getIo().setFree(false);
                    this.getIo().setJob(this.getCpu1().getJob());
                    this.getCpu1().setJob(null);
                    this.getCpu1().setFree(true);
                    double tmp = this.getIo().getGeneratore().getNext3Erlang();
//                    System.out.println(tmp);
                    this.getIo().getJob().setTempoProcessamento(tmp);
                    this.getCalendar().setTempoIO(this.getClock() + this.getIo().getJob().getTempoProcessamento());
//                    System.out.println("\tCPU1 " + this.getCalendar().getTempoIO());
                } else {
                    Job j = this.getCpu1().getJob();
                    double tmp = this.getIo().getGeneratore().getNext3Erlang();
//                    System.out.println(tmp);
                    j.setTempoProcessamento(tmp);
                    this.getCpu1().setJob(null);
                    this.getCpu1().setFree(true);
                }
                break;
            case OUT:
                this.getCpu1().setFree(true);
                this.getCpu1().getJob().setTempoUscita(this.getClock());
                this.getTempiUscita().add(this.getCpu1().getJob().getTempoJob());
                this.getCpu1().setJob(null);
                break;
        }
        if (this.getCpu1().getQ().size() > 0) {
            this.getCpu1().setJob(this.getJobFromQ());
            this.getCpu1().setFree(false);
            this.getCalendar().setTempoCPU1(this.getClock() + this.getCpu1().getJob().getTempoProcessamento());
        } else {
            this.getCalendar().setTempoCPU1(Double.MAX_VALUE);
            this.getCpu1().setFree(true);
            this.getCpu1().setJob(null);
        }
    }