Duration — 시간 간격 표현 타입

Duration — 시간 간격 표현 타입

Duration은 시간의 간격(span)을 나타내는 타입이에요. 주로 시스템 타임아웃에 사용돼요.

출처: Rust 공식 문서

본문

pub struct Duration { /* private fields */ }

Duration은 정수 초(whole number of seconds)와 나노초로 표현되는 분수 부분으로 구성돼요. 밑에 있는 시스템이 나노초 단위 정밀도를 지원하지 않으면, 시스템 타임아웃을 묶는 API는 일반적으로 나노초 수를 올림(round up)해요.

DurationClone, Copy, Debug, Default, Eq, Ord, PartialEq, PartialOrd, Hash 등 많은 공통 트레잇을 구현해요.

주요 생성·연산 메서드

pub const fn new(secs: u64, nanos: u32) -> Duration
pub const fn from_secs(secs: u64) -> Duration
pub const fn from_millis(millis: u64) -> Duration
pub const fn from_micros(micros: u64) -> Duration
pub const fn from_nanos(nanos: u64) -> Duration
pub const fn from_secs_f64(secs: f64) -> Duration
pub const fn from_secs_f32(secs: f32) -> Duration
pub const fn as_secs(&self) -> u64
pub const fn subsec_nanos(&self) -> u32
pub const fn as_millis(&self) -> u128
pub const fn as_micros(&self) -> u128
pub const fn as_nanos(&self) -> u128

Add, Sub, Mul, Div 같은 산술 연산자 트레잇도 구현하며, std::time::Durationchrono와 같은 외부 라이브러리와도 자주 함께 쓰여요.

더 알아보기 (Learn more)