Статья подготовлена для студентов курса «Разработчик С++» в образовательном проекте OTUS. Не секрет, что Lock-Free алгоритмы и структуры данных существенно усложняют проект. Это подтверждается как моим собственным опытом, так и Core Guidelines (набором рекомендаций и правил по написанию кода на С++). Следуя принципу Lock-Free, очень сложно реализовать код. Ещё сложнее его отладить и практически невозможно найти все баги, которые, как правило, всплывают только на проде. Почему возникают сложности? С моей точки зрения, технология до сих пор недостаточно изучена. Ситуацию усугубляет и то, что Lock-Free алгоритмы и структуры данных на практике используются достаточно редко. На самом деле, существует огромное количество тематических статей и видеороликов, но они настолько поверхностны, что, мягко говоря, не раскрывают всех нюансов. К сожалению, до сих пор нет серьёзных работ, которые научили бы сообщество разработчиков С++ использовать эти самые Lock-Free приёмы. А те аналитические м
Будьте внимательны, используя Lock-Free алгоритмы!
11 декабря 201811 дек 2018
34
1 мин