Example #1
0
        public CPrincipal(CForm cForm)
        {
            this.label_F = cForm.getlabel_F();
            this.label_P = cForm.getlabel_P();
            this.txt_C   = cForm.gettxt_C();

            CPalillo[]  palillo  = new CPalillo[5];
            CFilosofo[] filosofo = new CFilosofo[5];
            CMonitoMesa comensal = new CMonitoMesa();
            CLog        log      = new CLog();

            //CExcepciones excepciones = new CExcepciones(log);

            for (int i = 0; i < palillo.Length; i++)
            {
                palillo[i] = new CPalillo(i);
            }

            //for (int t = 0; t < threads.Length; t++)
            //{

            //    threads[t].Start();
            //}

            for (int i = 0; i < filosofo.Length; i++)
            {
                filosofo[i] = new CFilosofo(i, palillo[i], palillo[(i + 1) % 5],
                                            comensal, label_F[i], label_P[i], label_P[(i + 1) % 5], log,
                                            txt_C[i]);
            }

            for (int i = 0; i < filosofo.Length; i++)
            {
                for (int t = 0; t < threads.Length; t++)
                {
                    threads[t] = new Thread(new ThreadStart(filosofo[i].Run));
                    threads[t].Start();
                }
            }
        }