Как найти разницу во времени с помощью библиотеки Chrono в Rust - PullRequest
0 голосов
/ 01 июня 2019

У меня есть программа Rust, в которой я хочу сделать несколько простых сравнений с временем начала и окончания!

use chrono::{NaiveTime, Utc};

fn main() {
    let start_time: NaiveTime = Utc::now().time();
    let end_time: NaiveTime = Utc::now().time();
    println!("Total time taken to run is {}", end_time - start_time);
}

Код выше печатается как:

Total time taken to run is PT520.532696S

Полагаю, если я не ошибаюсь, это 520 секунд, но как я могу преобразовать это в минуты? Есть ли лучший способ?

1 Ответ

1 голос
/ 01 июня 2019

Простой взгляд на документ дает ответ :

use chrono::Utc;

fn main() {
    let start_time = Utc::now().time();
    let end_time = Utc::now().time();
    let diff = end_time - start_time;
    println!("Total time taken to run is {}", diff.num_minutes());
}

но учтите, что это не очень хороший способ измерить время монотонным способом, этот код может показывать -5 минут, если пользователь каким-либо образом изменит системную дату. Также позвоните time(), чтобы удалить информацию о дате, и это странно, когда вы используете хронограф, потому что обычно вы не хотите игнорировать дату, поэтому просто удалите time() call.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...