Доклад

Thread Local в C++ как он есть

  • На русском языке
Презентация pdf

Доклад посвящен такой уже вроде бы устоявшейся фиче C++ как thread_local. Несмотря на то, что стандартизована она еще в C++11, мало кто понимает, что за машинерия за этим стоит. Как и в каких случаях мы получаем этот функционал бесплатно, а когда в ход идет тяжелая артиллерия. Доклад рассматривает имплементацию в Linux как платформы с самой полной поддержкой этой фичи языка. И к тому же продолжающая ее развивать для получения максимального перформанса.

В докладе будут рассмотрены:

  • раннее POSIX-решение;
  • имплементация в языке и 4 «традиционные» модели Thread Local;
  • более продвинутая, но еще не везде применяющаяся дескрипторная модель;
  • особенности при работе с thread_local объектами и подводные камни связанные с ними;
  • ассемблерные листинги с комментариями к ним;
  • бенчмарки.

Целевая аудитория: более опытные программисты с минимальными знаниями ассемблера x86. Из доклада аудитория почерпнет знания о том, какое реальное время жизни их thread_local-объектов. В каких случаях можно безболезненно пользоваться этой фичей, а в каких случаях можно потерять перформанс при использовании thread_local. И каким образом можно обойти эти проблемы.

  • #implementation
  • #threads

Спикеры

Приглашенные эксперты

Доклады