Thread storage duration is the C storage duration in which an object's lifetime is bound to a particular thread of execution. An object can be accessed only during its lifetime; referring to it before that lifetime begins or after it ends has undefined behavior. section 13.2
Thread storage duration belongs to the broader model of object storage and initialization:
- C distinguishes static, automatic, allocated, and thread storage durations. section 13.2
- Thread duration binds an object to one thread of execution rather than to the whole program, a block, or an explicit allocation operation. section 13.2
- Objects with thread storage duration receive default initialization; this initializes their members as if to zero. section 13.4
- The storage duration determines how initialization works, while lifetime rules determine when access is valid. section 13.2 section 13.4

