DEENESPTFRRUARHIKOZHNL

classe ara::core::SteadyClock

[SWS_CORE_06401] Upstream: RS_AP_00130

class SteadyClock final {...};

This clock represents a monotonic clock. The time points of this clock cannot decrease as physical time moves forward and the time between ticks of this clock is constant.

Header-Datei#include "ara/core/steady_clock.h"
Forwarding-Header#include "ara/core/core_fwd.h"
Scopenamespace ara::core

Guide utilisateurGÉNÉRÉ PAR IA

Fournit une horloge strictement monotone avec une résolution nanoseconde pour des mesures d'intervalles et des échéances invariantes dans le temps.
GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : c5876cb77c90 Provenance Questions ouvertes (2)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Fournit une horloge strictement monotone avec une résolution nanoseconde pour des mesures d'intervalles et des échéances invariantes dans le temps.

La classe fournit une horloge monotone et uniforme avec une résolution nanoseconde pour la mesure d'intervalles de temps et d'échéances, dont les points dans le temps ne diminuent jamais ([SWS_CORE_06431], [SWS_CORE_06413]). Via la fonction statique now(), les applications obtiennent l'horodatage actuel de manière thread-safe et sans risque d'exception [SWS_CORE_06432]. Le calcul de la différence entre deux points temporels permet de déterminer de manière robuste la durée d'exécution des opérations.

Contexte

La classe ara::core::SteadyClock fournit une horloge monotone pour une mesure temporelle précise dans l'AUTOSAR Adaptive Platform. Sa responsabilité principale consiste à fournir des points temporels augmentant de manière continue ; les points temporels de cette horloge ne peuvent jamais diminuer lorsque le temps physique progresse, et la durée entre les tics est constante. Cette invariance est garantie par la propriété is_steady = true [SWS_CORE_06431].

Le modèle temporel de la classe s'inspire des concepts d'horloge standard du C++ et normalise les unités de mesure pour les intervalles de temps et les points temporels. La période de tic de l'horloge est définie via l'alias de type period comme une nanoseconde ([SWS_CORE_06413] : using period = std::nano). Un type entier 64 bits signé sert de type de représentation pour le nombre de tics ([SWS_CORE_06412] : using rep = std::int64_t). Sur cette base, using duration = std::chrono::duration<rep, period> [SWS_CORE_06411] représente l'intervalle de temps relatif, tandis que using time_point = std::chrono::time_point<SteadyClock, duration> [SWS_CORE_06414] lie des points temporels spécifiques à cette horloge. Les partenaires d'interaction typiques sont des composants applicatifs qui doivent déterminer des durées d'exécution ou surveiller des échéances.

Cycle de vie

La classe est spécifiée comme final et contient exclusivement des interfaces statiques. Interprétation : une instanciation de ara::core::SteadyClock n'est ni prévue ni nécessaire pour l'utilisation pratique, car la classe sert d'espace de noms statique et d'identifiant de type pour time_point. Question Q-08b479dc497c8f74 (ouverte) Il n'existe pas de transitions d'état, de phases d'initialisation ou de routines de destruction.

Pour l'accès simultané depuis plusieurs threads, la fonction d'interrogation centrale now() est expressément spécifiée comme sûre au niveau des threads (thread-safe) [SWS_CORE_06432]. Plusieurs threads peuvent donc acquérir des horodatages de manière concurrente et sans synchronisation externe supplémentaire.

Parcours d'utilisation

Un cas d'utilisation typique de ara::core::SteadyClock est la mesure de la durée d'exécution d'une section de programme. Au début, l'appelant interroge l'horodatage actuel via la méthode statique ara::core::SteadyClock::now() [SWS_CORE_06432], ce qui renvoie un objet de type time_point [SWS_CORE_06414]. Ensuite, l'application exécute l'opération prévue. Une fois celle-ci terminée, un nouvel appel à now() [SWS_CORE_06432] est effectué. En soustrayant le point temporel initial du point temporel final, l'application calcule la durée écoulée sous la forme de duration [SWS_CORE_06411]. Comme is_steady garantit que l'horloge ne recule jamais [SWS_CORE_06431], le résultat est toujours monotone et fiable lorsque le temps physique avance.

Mesure d'intervalle de temps avec ara::core::SteadyClockApplicationSteadyClocknow()t_start: time_pointExécuter l'opérationnow()t_ende: time_pointDauer = t_ende - t_start

Diagramme de séquence : déroulement typique d'une mesure de durée par la détermination de deux points temporels. Sources : [SWS_CORE_06432], [SWS_CORE_06411], [SWS_CORE_06414]

Scénarios d'erreur

L'interface de ara::core::SteadyClock ne prévoit aucun code d'erreur ni état d'erreur. La fonction now() est déclarée noexcept et possède la propriété d'être sûre vis-à-vis des exceptions (exception safe) [SWS_CORE_06432]. Un appel à now() n'échoue dans aucune condition de fonctionnement régulier et renvoie de manière garantie une valeur valide de type time_point [SWS_CORE_06414].

Interprétation : un dépassement de capacité théorique du compteur rep [SWS_CORE_06412] ne devrait mathématiquement se produire dans des systèmes réels qu'après plusieurs siècles de fonctionnement en raison de la plage de valeurs sur 64 bits avec des tics en nanosecondes, et ne constitue donc pas un risque d'erreur pratique. Question Q-9ce575da867b8203 (ouverte)

Ce guide est basé sur la spécification AUTOSAR Adaptive Platform Release R25-11.

Carte des membres

Méthodes

1

Constantes

1

Diagramme de classes

Hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); Klicken öffnet die jeweilige Klassenseite.

G nara__core__SteadyClock455 SteadyClock + is_steady + now()

Vue détaillée

Sélectionnez une entrée dans le plan.

Méthodes

now fonction

Return a time_point representing the current value of the clock.

static time_point now () noexcept;

Alias de type

duration alias de type

std::chrono::duration<rep, period> ≙ std::chrono::duration

using duration = std::chrono::duration<rep, period>;
period alias de type

A std::ratio type representing the tick period of the clock, in seconds . ≙ std::ratio

using period = std::nano;
rep alias de type

An arithmetic type representing the number of ticks in the clock’s duration .

using rep = std::int64_t;
time_point alias de type

std::chrono::time_point<ara::core::SteadyClock> ≙ std::chrono::time_point

Constantes

is_steady variable

steady clock flag, always true

static constexpr bool is_steady = true;

Documentation des méthodes

fonction now [SWS_CORE_06432] Upstream: RS_AP_00130

static time_point now () noexcept;

Return a time_point representing the current value of the clock.

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 24ebb1344fe4 Provenance Questions ouvertes (1)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

La fonction statique ara::core::SteadyClock::now() renvoie de manière synchrone un time_point représentant la valeur de compteur actuelle de l'horloge [SWS_CORE_06432]. Pour son utilisation, il convient d'inclure le fichier d'en-tête ara/core/steady_clock.h [SWS_CORE_06432]. Comme la méthode est liée statiquement à ara::core::SteadyClock, aucune instanciation de la classe n'est requise ; l'accès s'effectue directement via la portée.

En ce qui concerne le traitement des erreurs, la fonction est déclarée avec noexcept et désignée comme sûre vis-à-vis des exceptions (exception safe) [SWS_CORE_06432]. Les appelants n'ont par conséquent pas besoin de prévoir de traitement d'exceptions pour l'interrogation de l'heure, étant donné que l'opération retourne avec la garantie de ne comporter aucune erreur.

Concernant la concurrence et les restrictions, now() est spécifiée comme sûre pour les threads (thread-safe) [SWS_CORE_06432]. La fonction peut être appelée en parallèle depuis des contextes d'exécution et des threads quelconques sans synchronisation côté application.

Au sein des interfaces de ara::core::SteadyClock, la fonction devrait principalement servir à fournir des points temporels pour des mesures d'intervalles relatifs et des déterminations de temps d'exécution (interprétation : déduite de la portée et du type de retour [SWS_CORE_06432]). Question Q-34b2317714fd4e03 (ouverte)

Cette note d'utilisation a été générée automatiquement et repose sur la spécification d'AUTOSAR Adaptive R25-11.

Header-Datei#include "ara/core/steady_clock.h"
Scopeclass ara::core::SteadyClock
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Rückgabewert

TypBeschreibung
time_pointa time_point

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_CORE_06432
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06432@rel:R25-11#43d9af21
Content hash
43d9af21
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06432
Status: valid/unmigrated Version: rel:R25-11#5c6a8c47 Versionshistorie & Revisions (1 transition, 7 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_06432@rel:R25-11#5c6a8c47
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#bd3e18002026-09-30
  • R20-11rel:R20-11#2ebaac9e2026-10-14
  • R21-11rel:R21-11#2ebaac9e2026-10-14
  • R22-11rel:R22-11#23f195162026-10-14
  • R23-11rel:R23-11#1e8f88b82026-10-14
  • R24-11rel:R24-11#5c6a8c472026-10-14
  • R25-11rel:R25-11#5c6a8c472026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

Documentation des alias de type

alias de type duration [SWS_CORE_06411] Upstream: RS_AP_00130

using duration = std::chrono::duration<rep, period>;

std::chrono::duration<rep, period>

Header-Datei#include "ara/core/steady_clock.h"
Scopeclass ara::core::SteadyClock
Symbolduration

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_CORE_06411
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06411@rel:R25-11#3c06380d
Content hash
3c06380d
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06411
Status: valid/unmigrated Version: rel:R25-11#604e5eff Versionshistorie & Revisions (1 transition, 7 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_06411@rel:R25-11#604e5eff
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#8d0579d82026-09-30
  • R20-11rel:R20-11#0b720af62026-10-14
  • R21-11rel:R21-11#0b720af62026-10-14
  • R22-11rel:R22-11#da4c16bd2026-10-14
  • R23-11rel:R23-11#604e5eff2026-10-14
  • R24-11rel:R24-11#604e5eff2026-10-14
  • R25-11rel:R25-11#604e5eff2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

alias de type period [SWS_CORE_06413] Upstream: RS_AP_00130

using period = std::nano;

A std::ratio type representing the tick period of the clock, in seconds .

Header-Datei#include "ara/core/steady_clock.h"
Scopeclass ara::core::SteadyClock
Symbolperiod

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_CORE_06413
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06413@rel:R25-11#a6cd4434
Content hash
a6cd4434
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06413
Status: valid/unmigrated Version: rel:R25-11#23d3f8ae Versionshistorie & Revisions (1 transition, 7 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_06413@rel:R25-11#23d3f8ae
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#b4ea22ad2026-09-30
  • R20-11rel:R20-11#736232b22026-10-14
  • R21-11rel:R21-11#736232b22026-10-14
  • R22-11rel:R22-11#7d2f0f372026-10-14
  • R23-11rel:R23-11#23d3f8ae2026-10-14
  • R24-11rel:R24-11#23d3f8ae2026-10-14
  • R25-11rel:R25-11#23d3f8ae2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

alias de type rep [SWS_CORE_06412] Upstream: RS_AP_00130

using rep = std::int64_t;

An arithmetic type representing the number of ticks in the clock’s duration .

Header-Datei#include "ara/core/steady_clock.h"
Scopeclass ara::core::SteadyClock
Symbolrep

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_CORE_06412
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06412@rel:R25-11#2d6e81f7
Content hash
2d6e81f7
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06412
Status: valid/unmigrated Version: rel:R25-11#2bb738d9 Versionshistorie & Revisions (1 transition, 7 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_06412@rel:R25-11#2bb738d9
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#bf21afd72026-09-30
  • R20-11rel:R20-11#a465a7e92026-10-14
  • R21-11rel:R21-11#00a900252026-10-14
  • R22-11rel:R22-11#12d2049d2026-10-14
  • R23-11rel:R23-11#9dca85212026-10-14
  • R24-11rel:R24-11#9dca85212026-10-14
  • R25-11rel:R25-11#2bb738d92026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

alias de type time_point [SWS_CORE_06414] Upstream: RS_AP_00130

using time_point = std::chrono::time_point<SteadyClock, duration>;

std::chrono::time_point<ara::core::SteadyClock>

Header-Datei#include "ara/core/steady_clock.h"
Scopeclass ara::core::SteadyClock
Symboltime_point

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_CORE_06414
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06414@rel:R25-11#20f97600
Content hash
20f97600
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06414
Status: valid/unmigrated Version: rel:R25-11#1b006689 Versionshistorie & Revisions (1 transition, 7 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_06414@rel:R25-11#1b006689
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#1aef719d2026-09-30
  • R20-11rel:R20-11#c8d776632026-10-14
  • R21-11rel:R21-11#dc1e7e5a2026-10-14
  • R22-11rel:R22-11#8a18d9d52026-10-14
  • R23-11rel:R23-11#9f525c1b2026-10-14
  • R24-11rel:R24-11#1b0066892026-10-14
  • R25-11rel:R25-11#1b0066892026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

Documentation des constantes / variables

variable is_steady [SWS_CORE_06431] Upstream: RS_AP_00130

static constexpr bool is_steady = true;

steady clock flag, always true

Header-Datei#include "ara/core/steady_clock.h"
Scopeclass ara::core::SteadyClock
Symbolis_steady
Typbool

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_CORE_06431
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_06431@rel:R25-11#cc7c9da8
Content hash
cc7c9da8
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_06431
Status: valid/unmigrated Version: rel:R25-11#577f28aa Versionshistorie & Revisions (1 transition, 7 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_06431@rel:R25-11#577f28aa
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#cc7c9da82026-09-30
  • R20-11rel:R20-11#07665d652026-10-14
  • R21-11rel:R21-11#737caacf2026-10-14
  • R22-11rel:R22-11#6d708f332026-10-14
  • R23-11rel:R23-11#577f28aa2026-10-14
  • R24-11rel:R24-11#577f28aa2026-10-14
  • R25-11rel:R25-11#577f28aa2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill