USD/RUB 76.47 0.1%BTC $62,192 2.6%ETH $1,737 3.0%TON $1.59 3.2%IMOEX 2190.39 1.4%GOLD ₽9 921/г 0.1%
·Технологии·8 июля 2026 г.

OSDEV: Itanium часть 2: One-time Construction API и сигнлтоны Майерса

Приветствую!

В этой части мы рассмотрим что такое guard variables и как под капотом работают синглтоны Майерса. Цель конечно у меня другая, я просто обозреваю процесс разработки ОС и рассказываю какие задачи как и зачем я решаю. Но раз уж столкнулся с этим, то расскажу что понял :-D

И так, стандарт начиная с С++11 гарантирует нам что локальные статические переменные инициализируются потокобезопасно. Но кто и как это обеспечивает? Это делает ABI.

И все таки о чем же идет речь? Представьте себе что есть вот такая структура:

Источник: https://habr.com/ru/articles/1055604/?utm_source=habrahabr&utm_medium=rss&utm_campaign=1055604