- How to compile: g++ -o test main.cpp -lpthread -w - Example output: producer thread 3042753344 puts data to position1. producer thread 3042753344 puts data to position2. producer thread 3042753344 puts data to position3. producer thread 3042753344 puts data to position4. producer thread 3042753344 puts data to position5. producer thread 3042753344 puts data to position6. producer thread 3042753344 puts data to position7. producer thread 3042753344 puts data to position8. producer thread 3042753344 puts data to position9. producer thread 3042753344 puts data to position0. consumer thread 3051146048 consumes data at position 0. 1th consume consumer thread 3051146048 consumes data at position 1. 2th consume consumer thread 3051146048 consumes data at position 2. 3th consume consumer thread 3051146048 consumes data at position 3. 4th consume consumer thread 3051146048 consumes data at position 4. 5th consume consumer thread 3051146048 consumes data at position 5. 6th consume consumer thread 3051146048 consumes data at position 6. 7th consume consumer thread 3051146048 consumes data at position 7. 8th consume consumer thread 3051146048 consumes data at position 8. 9th consume consumer thread 3051146048 consumes data at position 9. 10th consume producer thread 3042753344 puts data to position1. producer thread 3042753344 puts data to position2. producer thread 3042753344 puts data to position3. producer thread 3042753344 puts data to position4. producer thread 3042753344 puts data to position5. producer thread 3042753344 puts data to position6. producer thread 3042753344 puts data to position7. producer thread 3042753344 puts data to position8. producer thread 3042753344 puts data to position9. producer thread 3042753344 puts data to position0. consumer thread 3051146048 consumes data at position 0. 11th consume consumer thread 3051146048 consumes data at position 1. 12th consume consumer thread 3051146048 consumes data at position 2. 13th consume consumer thread 3051146048 consumes data at position 3. 14th consume consumer thread 3051146048 consumes data at position 4. 15th consume consumer thread 3051146048 consumes data at position 5. 16th consume consumer thread 3051146048 consumes data at position 6. 17th consume consumer thread 3051146048 consumes data at position 7. 18th consume consumer thread 3051146048 consumes data at position 8. 19th consume consumer thread 3051146048 consumes data at position 9. 20th consume producer thread 3042753344 puts data to position1. producer thread 3042753344 puts data to position2. producer thread 3042753344 puts data to position3. producer thread 3042753344 puts data to position4. producer thread 3042753344 puts data to position5. producer thread 3042753344 puts data to position6. producer thread 3042753344 puts data to position7. producer thread 3042753344 puts data to position8. producer thread 3042753344 puts data to position9. producer thread 3059538752 puts data to position0. consumer thread 3051146048 consumes data at position 0. 21th consume consumer thread 3051146048 consumes data at position 1. 22th consume consumer thread 3051146048 consumes data at position 2. 23th consume consumer thread 3051146048 consumes data at position 3. 24th consume consumer thread 3051146048 consumes data at position 4. 25th consume consumer thread 3051146048 consumes data at position 5. 26th consume consumer thread 3051146048 consumes data at position 6. 27th consume consumer thread 3051146048 consumes data at position 7. 28th consume consumer thread 3051146048 consumes data at position 8. 29th consume consumer thread 3051146048 consumes data at position 9. 30th consume producer thread 3059538752 puts data to position1. producer thread 3059538752 puts data to position2. producer thread 3059538752 puts data to position3. producer thread 3059538752 puts data to position4. producer thread 3059538752 puts data to position5. producer thread 3059538752 puts data to position6. producer thread 3059538752 puts data to position7. producer thread 3059538752 puts data to position8. producer thread 3059538752 puts data to position9. consumer thread 3051146048 consumes data at position 0. 31th consume consumer thread 3051146048 consumes data at position 1. 32th consume consumer thread 3051146048 consumes data at position 2. 33th consume consumer thread 3051146048 consumes data at position 3. 34th consume consumer thread 3051146048 consumes data at position 4. 35th consume consumer thread 3051146048 consumes data at position 5. 36th consume consumer thread 3051146048 consumes data at position 6. 37th consume consumer thread 3051146048 consumes data at position 7. 38th consume producer thread 3059538752 puts data to position0. producer thread 3059538752 puts data to position1. producer thread 3059538752 puts data to position2. producer thread 3059538752 puts data to position3. producer thread 3059538752 puts data to position4. producer thread 3059538752 puts data to position5. producer thread 3059538752 puts data to position6. producer thread 3059538752 puts data to position7. producer thread 3042753344 puts data to position8. consumer thread 3051146048 consumes data at position 8. 39th consume consumer thread 3051146048 consumes data at position 9. 40th consume consumer thread 3051146048 consumes data at position 0. 41th consume consumer thread 3051146048 consumes data at position 1. 42th consume consumer thread 3051146048 consumes data at position 2. 43th consume consumer thread 3051146048 consumes data at position 3. 44th consume consumer thread 3051146048 consumes data at position 4. 45th consume consumer thread 3051146048 consumes data at position 5. 46th consume consumer thread 3051146048 consumes data at position 6. 47th consume consumer thread 3067931456 consumes data at position 7. 48th consume producer thread 3042753344 puts data to position9. producer thread 3042753344 puts data to position0. producer thread 3042753344 puts data to position1. producer thread 3042753344 puts data to position2. producer thread 3042753344 puts data to position3. producer thread 3042753344 puts data to position4. producer thread 3042753344 puts data to position5. producer thread 3042753344 puts data to position6. producer thread 3042753344 puts data to position7. consumer thread 3067931456 consumes data at position 8. 49th consume consumer thread 3067931456 consumes data at position 9. 50th consume