6.64.1 ISO/IEC 9899:1999 Изменения для потоково-локального хранения
Ниже приведены изменения в ISO/IEC 9899:1999 (также известном как C99), которые документируют точный смысл расширения языка.
- 5.1.2 Среды выполнения
Добавить новый текст после первого абзаца
В любой среде выполнения поток — это поток управления в программе. Реализацией определяется, может ли быть более одного потока, связанного с программой. Реализацией определяется, как создаются потоки, помимо первого, имя и тип функции, вызываемой при запуске потока, и как потоки могут быть завершены. Однако объекты со временем жизни потока должны быть инициализированы до запуска потока.
- 6.2.4 Время жизни объектов
Добавить новый текст перед третьим абзацем
Объект, идентификатор которого объявлен с модификатором класса хранения
__thread, имеет время жизни потока. Его срок жизни — это весь период выполнения потока, и его хранимое значение инициализируется только один раз до запуска потока. - 6.4.1 Ключевые слова
Добавить
__thread. - 6.7.1 Модификаторы класса хранения
Добавить
__threadв список модификаторов класса хранения в первом абзаце.Изменить второй абзац на
За исключением
__thread, может быть указан только один модификатор класса хранения […]. Модификатор__threadможет использоваться отдельно или сразу послеexternилиstatic.Добавить новый текст после шестого абзаца
Объявление идентификатора переменной, имеющей область действия блока, которая указывает
__thread, должно также указывать либоextern, либоstatic.Модификатор
__threadдолжен использоваться только с переменными.
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-13.3.0/gcc/C99-Thread_002dLocal-Edits.html