public void drucken() { Druckauftrag a = null; // es wird mit der gemeinsamen Ressource gearbeiten // lock (pool) // { while (pool.Count > 0) { // ein Auftrag wird der gemeinsamen Ressource entnommen a = pool.Dequeue(); WriteLine("Drucke " + a.beschreibung); gesamtzeit += a.zeit; // etwas warten, bevor die Bedinung der Schleife erneut geprüft wird Thread.Sleep(1000); } // } }
// Methode geht evtl weg, weil das hinzufügen jemand anderes macht public void hinzufügen(Druckauftrag druckauf) { // es wird mit der gemeinsamen Ressource gearbeitet pool.Enqueue(druckauf); }