// Producer/Consumer-Problem: gemeinsamer (unbeschränkten) Puffer Buffer buffer = ....; Semaphore num = 0; // für Anzahl der Pufferelemente Semaphore bufferAccess = 1; // für Pufferzugriff // Erzeugerprozess: while (true) { product = produce(...); P(bufferAccess); push(product, buffer); V(bufferAccess); V(num); } // Verbraucherprozess: while (true) { P(num); P(bufferAccess); prod = pull(buffer); V(bufferAccess); consume(prod); }