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