Exemple #1
0
        public void simular(int ciclos)
        {
            f                  = new FIFO();
            ciclosVacios       = 0;
            ciclosPendientes   = 0;
            procesosPendientes = 0;

            for (int i = 0; i < ciclos; i++)
            {
                if (r.Next(0, 4) == 0)
                {
                    Proceso temp = new Proceso();
                    f.enqueue(temp);
                    procesosPendientes++;
                    ciclosPendientes += temp.ciclosRestantes;
                }
                if (f.peek() != null)
                {
                    f.peek().ciclosRestantes--;
                    if (f.peek().ciclosRestantes == 0)
                    {
                        f.dequeue();
                        procesosPendientes--;
                    }
                    ciclosPendientes--;
                }
                else
                {
                    ciclosVacios++;
                }
            }
        }
Exemple #2
0
        private void CriarProcesso(int numeroProcesso, int tempoProcesso)
        {
            var processo = new FIFO(numeroProcesso, tempoProcesso);

            if (!processo.EhValido())
            {
                msgErro.Text = processo.ToString();
                return;
            }


            contexto.AdicionarProcesso(processo);
        }
Exemple #3
0
 public void AdicionarProcesso(FIFO fifo)
 {
     _repository.Add(fifo);
 }
Exemple #4
0
 public Form1()
 {
     InitializeComponent();
     miFIFO = new FIFO();
 }