// Listing 4 code/ch14 int ACE_TMAIN (int, ACE_TCHAR *[]) { int shared_buf[Q_SIZE]; SafeUInt in = 0; SafeUInt out = 0; Producer producer (shared_buf, in, out); Consumer consumer (shared_buf, in, out); producer.activate(); consumer.activate(); producer.wait(); consumer.wait(); return 0; }
// Listing 1 // Listing 3 code/ch14 int ACE_TMAIN (int, ACE_TCHAR *[]) { ACE_Semaphore psem (5); ACE_Semaphore csem (0); Consumer consumer (psem, csem); Producer producer (psem, csem, consumer); producer.activate (); consumer.activate (THR_NEW_LWP | THR_JOINABLE, Consumer::N_THREADS); producer.wait (); consumer.wait (); return 0; }