претензии к первохулителю, Тиму Суини: https://mobile.twitter.com/timsweeneyepic/status/1223077404660371456?lang=en
Ещё раз, меня беспокоит наследие старых говен мамонта, я не спрашиваю как с ними работать :) что такое SEH/VEH я знаю тоже, и про ветвление траями-кетчами тоже не надо
Так в релизе failure path тоже на порядки медленее.
Я пытаюсь осмыслить эту фразу: "Exception throwing on Windows x64 is 8,000 CPU cycles in Visual C++ and 20,000 in clang, but grows to 1,800,000 when a debugger is attached to the process." То есть если к процессу подключён дебаггер, то "стоимость" бросания исключения - 1800 тыс. тактов. Оооооооокееееееей... И как часто в продакшене работает код, к которому дебаггер прицеплен? То есть за что боремся и что лечим?
Автор ниже сознался: https://mobile.twitter.com/TimSweeneyEpic/status/1223376031949651969 Там просто используется старая виндовая реализация исключений.
Обсуждают сегодня