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

Guia do utilizadorGERADO POR IA

Disponibiliza um relógio estritamente monótono com resolução de nanossegundos para medições de intervalos e prazos invariantes no tempo.
GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: c5876cb77c90 Procedência Perguntas em aberto (2)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

Disponibiliza um relógio estritamente monótono com resolução de nanossegundos para medições de intervalos e prazos invariantes no tempo.

A classe disponibiliza um relógio monótono e uniforme com resolução de nanossegundos para a medição de períodos de tempo e prazos, cujos pontos no tempo nunca diminuem ([SWS_CORE_06431], [SWS_CORE_06413]). Através da função estática now(), as aplicações obtêm o timestamp atual de forma thread-safe e sem risco de exceções [SWS_CORE_06432]. Ao calcular a diferença entre dois pontos no tempo, é possível determinar de forma robusta a duração de execução de operações.

Contexto

A classe ara::core::SteadyClock disponibiliza um relógio monótono para a medição precisa do tempo na AUTOSAR Adaptive Platform. A sua responsabilidade principal consiste em fornecer pontos no tempo em crescimento constante; os pontos no tempo deste relógio nunca podem diminuir à medida que o tempo físico avança, e a duração entre os ticks é constante. Esta invariância é garantida através da propriedade is_steady = true [SWS_CORE_06431].

O modelo temporal da classe baseia-se nos conceitos de relógio padrão de C++ e uniformiza as unidades de medida para intervalos de tempo e pontos no tempo. O período de tick do relógio está definido como nanossegundo através do alias de tipo period ([SWS_CORE_06413]: using period = std::nano). É utilizado um tipo de inteiro com sinal de 64 bits como tipo de representação para o número de ticks ([SWS_CORE_06412]: using rep = std::int64_t). Com base nisto, using duration = std::chrono::duration<rep, period> [SWS_CORE_06411] mapeia a distância temporal relativa, enquanto using time_point = std::chrono::time_point<SteadyClock, duration> [SWS_CORE_06414] vincula pontos no tempo específicos a este relógio. Os parceiros de interação típicos são componentes da aplicação que necessitam de determinar durações de execução ou monitorizar prazos.

Ciclo de vida

A classe está especificada como final e contém exclusivamente interfaces estáticas. Interpretação: a instanciação de ara::core::SteadyClock não está prevista nem é necessária para a utilização prática, dado que a classe serve como namespace estático e identificador de tipo para time_point. Pergunta Q-08b479dc497c8f74 (aberta) Não existem transições de estado, fases de inicialização ou rotinas de destruição.

Para o acesso simultâneo a partir de múltiplas threads, a função de consulta central now() está expressamente especificada como thread-safe [SWS_CORE_06432]. Deste modo, múltiplas threads podem registar timestamps concorrentemente e sem sincronização externa adicional.

Caminho de utilização

Um percurso de utilização típico de ara::core::SteadyClock é a medição da duração de execução de uma secção de programa. No início, o chamador consulta o timestamp atual através do método estático ara::core::SteadyClock::now() [SWS_CORE_06432], retornando um objeto do tipo time_point [SWS_CORE_06414]. Em seguida, a aplicação executa a operação planeada. Após a sua conclusão, é efetuada uma nova chamada a now() [SWS_CORE_06432]. Ao subtrair o ponto no tempo inicial do ponto no tempo final, a aplicação calcula a duração decorrida como duration [SWS_CORE_06411]. Como is_steady garante que o relógio nunca anda para trás [SWS_CORE_06431], o resultado é sempre monótono e fiável à medida que o tempo físico avança.

Medição de intervalo de tempo com ara::core::SteadyClockAplicaçãoSteadyClocknow()t_start: time_pointExecutar operaçãonow()t_ende: time_pointDauer = t_ende - t_start

Diagrama de sequência: fluxo típico de uma medição de duração através da determinação de dois pontos no tempo. Fontes: [SWS_CORE_06432], [SWS_CORE_06411], [SWS_CORE_06414]

Cenários de erro

A interface de ara::core::SteadyClock não prevê códigos de erro nem estados de erro. A função now() está declarada como noexcept e possui a propriedade de segurança para exceções (exception safe) [SWS_CORE_06432]. Uma chamada a now() não falha sob quaisquer condições normais de funcionamento e retorna garantidamente um valor válido do tipo time_point [SWS_CORE_06414].

Interpretação: Um overflow teórico de valores do contador rep [SWS_CORE_06412] deverá ocorrer em sistemas reais, em termos de cálculo, apenas após vários séculos de tempo de operação, devido ao intervalo de valores de 64 bits com ticks em nanossegundos, não representando assim qualquer risco prático de erro. Pergunta Q-9ce575da867b8203 (aberta)

Este guia baseia-se na especificação AUTOSAR Adaptive Platform Release R25-11.

Mapa de membros

Métodos

1

Constantes

1

Diagrama de classes

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

G nara__core__SteadyClock455 SteadyClock + is_steady + now()

Vista de detalhes

Selecione uma entrada no índice.

Métodos

now função

Return a time_point representing the current value of the clock.

static time_point now () noexcept;

Aliases de tipo

duration alias de tipo

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

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

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

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

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

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

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

Constantes

is_steady variável

steady clock flag, always true

static constexpr bool is_steady = true;

Documentação dos métodos

função now [SWS_CORE_06432] Upstream: RS_AP_00130

static time_point now () noexcept;

Return a time_point representing the current value of the clock.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 24ebb1344fe4 Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

A função estática ara::core::SteadyClock::now() retorna sincronicamente um time_point, que representa a contagem atual do relógio [SWS_CORE_06432]. Para a utilização, deve-se incluir o arquivo de cabeçalho ara/core/steady_clock.h [SWS_CORE_06432]. Como o método está vinculado estaticamente a ara::core::SteadyClock, não é necessária a instanciação da classe; o acesso ocorre diretamente por meio do escopo.

Em relação ao tratamento de erros, a função é declarada com noexcept e designada como segura contra exceções (exception safe) [SWS_CORE_06432]. Consequentemente, os chamadores não precisam prever tratamento de exceções para a consulta de tempo, visto que a operação retorna garantidamente sem erros.

No que diz respeito à concorrência e às restrições, now() é especificado como seguro para threads (thread-safe) [SWS_CORE_06432]. A função pode ser chamada em paralelo a partir de quaisquer contextos de execução e threads sem sincronização por parte da aplicação.

Dentro das interfaces de ara::core::SteadyClock, a função deve servir primariamente para fornecer instantes de tempo para medições relativas de intervalos e determinações de tempo de execução (interpretação: derivada do escopo e do tipo de retorno [SWS_CORE_06432]). Pergunta Q-34b2317714fd4e03 (aberta)

Esta nota de uso foi gerada automaticamente e baseia-se na especificação do 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#817b468d
Content hash
817b468d
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

Documentação dos aliases de tipo

alias de tipo 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#ae81fab8
Content hash
ae81fab8
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 tipo 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#e4dea7e2
Content hash
e4dea7e2
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 tipo 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#ef99d3ba
Content hash
ef99d3ba
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 tipo 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#70667143
Content hash
70667143
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

Documentação das constantes / variáveis

variável 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#d3a8b258
Content hash
d3a8b258
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