Esempio n. 1
0
        static void ablauf01()
        {
            Drucker d = new Drucker(null);

            d.hinzufügen(new Druckauftrag("Schaukelpferd", 34));
            d.hinzufügen(new Druckauftrag("Bömmel", 10));
            d.hinzufügen(new Druckauftrag("Kaffeebohne", 42));

            d.drucken();

            WriteLine("Gesamtzeit: " + d.gesamtzeit);
            ReadLine();
        }
Esempio n. 2
0
        static void variante2()
        {
            // wir erstellen die gemeinsam zu nutzende Ressource
            Queue <Druckauftrag> pool = new Queue <Druckauftrag>();

            // wir weisen diese Ressource einem Drucker zu
            Drucker print = new Drucker(pool);

            // wir weisen die gleiche Ressource dem Arbeiter (Variante2) zu
            Variante02 arbeiter = new Variante02(pool);


            // wir erstellen zwei Threads
            // die Methode zum erstellen von Aufträgen und zum Drucken von diesen sollen
            // parallel ablaufen
            Thread t1 = new Thread(arbeiter.generierenAufträge);
            Thread t2 = new Thread(print.drucken);

            t1.Start();
            t2.Start();
        }
Esempio n. 3
0
        static void ablauf02()
        {
            Drucker d   = new Drucker(null);
            Random  rnd = new Random();
            String  was = null;

            WriteLine("geben sie an, was gedruck werden soll, beenden mit Leerzeile");
            do
            {
                was = ReadLine();
                if (was.Length > 0)
                {
                    // bereich zwischen 30 und 60
                    d.hinzufügen(new Druckauftrag(was, rnd.Next(30, 60)));
                }
            }while (was.Length > 0);

            WriteLine("es wird gedruckt");

            d.drucken();

            WriteLine("Gesamtzeit: " + d.gesamtzeit);
        }