XFA 平台时钟
单元: HPDFXFAPlatform
type
TXFAPlatformTime = record
EpochMilliseconds: UInt64;
RandomSeed: Cardinal;
end;
function HPDFXFAMonotonicMilliseconds: UInt64;
function HPDFXFAHighResolutionFrequency: Int64;
function HPDFXFAHighResolutionTicks: Int64;
function HPDFXFAWallClock: TXFAPlatformTime;
HPDFXFAMonotonicMilliseconds 返回递增的原生毫秒数供耗时预算使用;其值不是日历时间戳
HPDFXFAHighResolutionTicks 与 HPDFXFAHighResolutionFrequency 提供原生间隔时钟及其每秒 tick 数;tick 差值除以频率即得经过秒数
Windows 使用 GetTickCount64 和 QueryPerformanceCounter;Linux 使用原生单调时钟,高分辨率频率对应纳秒粒度
HPDFXFAWallClock 记录当前 UTC Unix epoch 毫秒值和一个由时钟派生、供确定性事件日志使用的 RandomSeed;该 seed 不是密码学随机源
Windows 挂钟值来自 FILETIME,Linux 值来自 CLOCK_REALTIME;原生时钟失败抛出 EOSError
脚本重放使用已记录的 epoch 和 seed 值,而不是为先前记录的求值重新读取挂钟