Size: a a a

2020 April 18

IA

Ivan Azoyan in pro.cxx
У меня создаётся впечатление, что для варианта написали таблицу переходов, что как бы уже есть в самом языке)
источник

IA

Ivan Azoyan in pro.cxx
Я не набрасываю, если что)) а предлагаю задуматься
источник

ПК

Побитый Кирпич in pro.cxx
Ivan Azoyan
У меня создаётся впечатление, что для варианта написали таблицу переходов, что как бы уже есть в самом языке)
Какая таблица есть в языке?
источник

IA

Ivan Azoyan in pro.cxx
Таблица виртуальных функций
источник

m

magras in pro.cxx
Ivan Azoyan
А почему быстрее обычного полиморфизма?
У variant два свойства:
1) Все типы, которые можно положить в него известны на этапе компиляции.
2) Он хранит объект в себе, а не на хипе.
Скорость никто не обещал, хотя тут возможен небольшой выигрыш.
источник

DS

Dmitry Sokolov in pro.cxx
Нет, полиморфизм это всё таки заранее определенный интерфейс, а тут по сути visit порождает шаблонно все варианты для заданного F и просто дёргает нужный.
источник

ПК

Побитый Кирпич in pro.cxx
Ivan Azoyan
Таблица виртуальных функций
Цитату со стандарта найти сможешь?
источник

IA

Ivan Azoyan in pro.cxx
Побитый Кирпич
Цитату со стандарта найти сможешь?
Мне лень этим заниматься. Во всех компиляторах она есть
источник

DS

Dmitry Sokolov in pro.cxx
Ivan Azoyan
Мне лень этим заниматься. Во всех компиляторах она есть
Не, тут диагонально vtable. Не множество таблиц с ограниченным набором функций для каждого типа а таблицы с одной функцией для ограниченного множества типов.
источник

AZ

Alexander Zaitsev in pro.cxx
Ivan Azoyan
Мне лень этим заниматься. Во всех компиляторах она есть
и не найдешь, потому что там этого нет :)
источник

S

Stas in pro.cxx
Есть какие-то популярные исследования/ топики, где изучаются wait-free структуры данных?
источник

z

zeroid in pro.cxx
Побитый Кирпич
Цитату со стандарта найти сможешь?
Это же специфика ABI, на сколько я помню. У разрабов компилей нужно спрашивать.
источник

VO

Vyacheslav Olkhovchenkov in pro.cxx
Wait-free algorithms were rare until 2011, both in research and in practice. However, in 2011 Kogan and Petrank[16] presented a wait-free queue building on the CAS primitive, generally available on common hardware. Their construction expanded the lock-free queue of Michael and Scott,[17] which is an efficient queue often used in practice. A follow-up paper by Kogan and Petrank[18] provided a method for making wait-free algorithms fast and used this method to make the wait-free queue practically as fast as its lock-free counterpart. A subsequent paper by Timnat and Petrank[19] provided an automatic mechanism for generating wait-free data structures from lock-free ones. Thus, wait-free implementations are now available for many data-structures.
источник

AN

Alexander N in pro.cxx
wait-free? Это не синоним lock-free?
источник

VO

Vyacheslav Olkhovchenkov in pro.cxx
нет конечно
источник

VO

Vyacheslav Olkhovchenkov in pro.cxx
lock-free это вообще немножко наебалово
источник

AN

Alexander N in pro.cxx
Ну вот например в контейнерах, которые юзает TBB там вроде не блокируется хранилище данных само. Как-то сегментами выделяется память и вообще вроде как нет необходимости в вещах типа мьютексов
источник

S

Stas in pro.cxx
Vyacheslav Olkhovchenkov
Wait-free algorithms were rare until 2011, both in research and in practice. However, in 2011 Kogan and Petrank[16] presented a wait-free queue building on the CAS primitive, generally available on common hardware. Their construction expanded the lock-free queue of Michael and Scott,[17] which is an efficient queue often used in practice. A follow-up paper by Kogan and Petrank[18] provided a method for making wait-free algorithms fast and used this method to make the wait-free queue practically as fast as its lock-free counterpart. A subsequent paper by Timnat and Petrank[19] provided an automatic mechanism for generating wait-free data structures from lock-free ones. Thus, wait-free implementations are now available for many data-structures.
А откуда фрагмент?
источник

VO

Vyacheslav Olkhovchenkov in pro.cxx
хоспади, взял бы да погуглил. вики же
источник

S

Stas in pro.cxx
Что-то не так гуглил. Спасибо в любом случае.
источник