Exemple #1
0
        void executaThread()
        {
            //3 - Cria os processos
            List <Processo> processos = new List <Processo>();
            List <TextBox>  textboxes = new List <TextBox>();
            List <Label>    labels    = new List <Label>();

            Processo processo1 = new Processo();

            processo1.setInput(textBox2.Text);
            processos.Add(processo1);
            textboxes.Add(textBox5);
            labels.Add(label4);
            processo1.ciclos = Convert.ToInt32(textBox8.Text);
            finalizado(processos[0].finalizado);

            Processo processo2 = new Processo();

            processo2.setInput(textBox3.Text);
            processos.Add(processo2);
            textboxes.Add(textBox6);
            labels.Add(label5);
            processo2.ciclos = Convert.ToInt32(textBox9.Text);
            finalizado(processos[1].finalizado);

            Processo processo3 = new Processo();

            processo3.setInput(textBox4.Text);
            processos.Add(processo3);
            textboxes.Add(textBox7);
            labels.Add(label6);
            processo3.ciclos = Convert.ToInt32(textBox10.Text);
            finalizado(processos[2].finalizado);

            //4 - Calcula a matriz de saída para o txt
            qntProcessos = processos.Count() + 1;
            qntColunas   = calculaTamanhoTotal(processos) + 1;
            matriz       = new string[qntProcessos, qntColunas];


            escalonaProcessos(processos, Convert.ToInt32(textBox1.Text), 0, textboxes);
            controlesDesbloquear();
        }