Klockor på XFA-plattformen
Enhet: HPDFXFAPlatform
type
TXFAPlatformTime = record
EpochMilliseconds: UInt64;
RandomSeed: Cardinal;
end;
function HPDFXFAMonotonicMilliseconds: UInt64;
function HPDFXFAHighResolutionFrequency: Int64;
function HPDFXFAHighResolutionTicks: Int64;
function HPDFXFAWallClock: TXFAPlatformTime;
HPDFXFAMonotonicMilliseconds returnerar växande native millisekunder för budgetar på förfluten tid; värdet är ingen kalendertidsstämpel
HPDFXFAHighResolutionTicks och HPDFXFAHighResolutionFrequency ger en native intervallklocka och dess frekvens i ticks per sekund; dividera tickdifferenser med frekvensen för att få förflutna sekunder
Windows använder GetTickCount64 och QueryPerformanceCounter; Linux använder sin native monotona klocka med högupplöst frekvens i nanosekunder
HPDFXFAWallClock registrerar aktuell UTC Unix epoch i millisekunder och en klockbaserad RandomSeed som den deterministiska händelsejournalen använder; seedet är ingen kryptografisk slumptalskälla
Väggklockvärden på Windows kommer från FILETIME och på Linux från CLOCK_REALTIME; native klockfel ger EOSError
Vid skript-replay används inspelade epoch- och seedvärden i stället för att läsa nya väggklockvärden för redan inspelade utvärderingar