В чем причина того, что абстракции высокого уровня, в глубине которых используется программирование без блокировок, не популярны?

Судя по тому, что я понял о программировании без блокировок, это невероятно сложно сделать правильно ... и я согласен. От одной мысли о некоторых проблемах у меня болит голова. Но вот что мне интересно, почему нет есть ли повсеместное использование высокоуровневых оберток (например, блокировка свободной очереди и тому подобное)? Например, у boost нет библиотеки, свободной от блокировок, хотя, насколько мне известно, она предлагалась. Я имею в виду, я предполагаю, что существует множество приложений, в которых нельзя избежать того, что критические раздел - это большая часть нагрузки. Так в чем же причины? Это ...

  1. Патенты - я слышал, что некоторые вещи, связанные с программированием без блокировки, запатентованы.
  2. Производительность.
  3. У Google и Microsoft есть подобные внутренние библиотеки, но ни одна из них не является общедоступной ...
  4. Что-то еще?

Итак, мой вопрос: почему абстракции высокого уровня, в которых используется программирование без блокировок, не очень популярно, но в то же время «обычное» многопоточное программирование «в ходу»?

РЕДАКТИРОВАТЬ: boost получил lockfree lib :)

12
задан Stein Åsmul 22 April 2014 в 21:16
поделиться