Spec-Zone.ru › GCC 6

6.63.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-6.5.0/gcc/C99-Thread-Local-Edits.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API