Метод checked_div
Метод checked_div выполняет деление длительности
на заданное число и возвращает результат в виде
Option<Duration>. Если деление прошло успешно,
возвращается Some(Duration). Если делитель равен
нулю или произошло переполнение, возвращается
None. Параметром метод принимает число,
на которое нужно разделить длительность.
Синтаксис
duration.checked_div(rhs)
Пример
Давайте разделим длительность в 10 секунд на 2 и выведем результат:
use std::time::Duration;
fn main()
{
let duration = Duration::from_secs(10);
let res = duration.checked_div(2);
println!("{:?}", res);
}
Результат выполнения кода:
Some(5s)
Пример
Давайте попробуем разделить длительность на ноль и посмотрим, что вернёт метод:
use std::time::Duration;
fn main()
{
let duration = Duration::from_secs(10);
let res = duration.checked_div(0);
println!("{:?}", res);
}
Результат выполнения кода:
None
Пример
Давайте разделим длительность в 1 наносекунду на 2.
Так как результат не может быть представлен в виде
целого числа наносекунд, метод вернёт None:
use std::time::Duration;
fn main()
{
let duration = Duration::from_nanos(1);
let res = duration.checked_div(2);
println!("{:?}", res);
}
Результат выполнения кода:
None
Смотрите также
-
класс
Duration,
который представляет интервал времени -
метод
checked_mul,
который выполняет умножение Duration на число с проверкой -
метод
checked_add,
который выполняет сложение двух Duration с проверкой -
метод
checked_sub,
который выполняет вычитание двух Duration с проверкой