Skip to content

Lock Free Multithreading

Anatoly Kulakov edited this page Dec 30, 2021 · 4 revisions

Юрий Кербицков «Свобода от блокировок или lock-free многопоточность»

Во время разработки многопоточного кода практически всегда встаёт проблема параллельного доступа к ресурсам. Благо у нас есть необходимый инструментарий для решения этой проблемы. Самым простым способом решения проблемы параллельного доступа к ресурсам являются блокировки. В большинстве разрабатываемых приложений этого достаточно. Но когда на первый план выходит производительность и быстрый отклик, то блокировки могут послужить одним из узких мест. Чтобы повысить производительность и избежать накладных расходов блокировок существуют различные подходы и алгоритмы. Самыми идеальными являются wait-free алгоритмы, но, к сожалению, на практике, ситуации в которых мы можем их использовать, встречаются довольно редко. В этом докладе рассмотрим основные алгоритмы lock-free многопоточности, поговорим о некоторых оптимизациях компилятора, а также сравним производительность lock-free и не lock-free многопоточного кода.


Доклад представил Юрий Кербицков в рамках Встречи KznDotNet №1.

Слайды

Слайды

Видео

Видео

Clone this wiki locally