/// A timer which uses mach_absolute_time to get its time. This is what the metal callbacks use. #[derive(Debug)] pubstruct PresentationTimer {
scale: MachTimebaseInfo,
} impl PresentationTimer { /// Generates a new timer. pubfn new() -> Self { // Default to 1 / 1 in case the call to timebase_info fails. letmut scale = MachTimebaseInfo {
numerator: 1,
denominator: 1,
}; unsafe { mach_timebase_info(&mut scale) };
Self { scale }
}
/// Gets the current time in nanoseconds. pubfn get_timestamp_ns(&self) -> u128 { let time = unsafe { mach_absolute_time() };
(time as u128 * self.scale.numerator as u128) / self.scale.denominator as u128
}
}
Messung V0.5 in Prozent
¤ Dauer der Verarbeitung: 0.8 Sekunden
(vorverarbeitet am 2026-06-18)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.