Nein, thread_local sollte in Interrupt-Service-Routinen nicht verwendet werden. Der Kontext von ISRs ist unabhängig vom aktuellen Thread-Kontext. Der Zugriff auf TLS kann undefiniertes Verhalten oder falsche Daten liefern. In sicherheitskritischer Embedded-Software ist daher von der Nutzung in ISRs abzuraten.
Ist thread_local in Interrupt-Service-Routinen (ISRs) sicher?
—