С комментарий от Арка Робисона , и он не получает намного больше "рта лошади" , чем (a) :
У PPL concurrent_queue
нет блокирующего всплывающего окна, следовательно, и у tbb::strict_ppl::concurrent_queue
нет. Блокировка всплывающих окон доступна в tbb::concurrent_bounded_queue
.
Аргумент конструкции для исключения блокировки блокируется тем, что во многих случаях синхронизация для блокировки обеспечивается за пределами очереди, и в этом случае реализация блокировки внутри очереди становится ненужной служебной информацией.
С другой стороны, популярность блокировки tbb::concurrent_queue
была популярна среди пользователей, у которых не было внешней синхронизации.
Итак, мы разделили функциональность. Сценарии использования, которые не нуждаются в блокировке или ограниченности, могут использовать новый tbb::concurrent_queue
, а варианты использования, которые действительно нуждаются в нем, могут использовать tbb::concurrent_bounded_queue
.
(a) Арка является архитектором Threading Building Blocks.