Есть к примеру два pthread, один пишет в глобальную очередь, второй читает. Чтобы удалить элемент из очереди, приходится блокировать mutex-ом всю очередь, но в результате получаем эмуляцию буфера обмена, что даже не напоминает очередь. Как решается такая проблема автосинхронизации по mutex очереди?
В идеальном случае, хочется чтобы скорости записи(push) и чтения(pop) из очереди были разными, а не одинаковыми(как было описано выше).