5个版本

0.1.4 2019年12月10日
0.1.3 2019年12月9日
0.1.2 2019年12月8日
0.1.1 2019年12月8日
0.1.0 2019年12月8日

#16 in #measure-time

每月40次下载
用于 butane

MIT 许可证

4KB
62

Rust函数的时间测量

它将简单地打印函数的执行时间

License: MIT Crates.io Build Status

用法

[dependencies]
exec_time = "0.1.4"

示例

在打印日志中,它将打印 Time <prefix>::<function_name>::<suffix>: <execution time> 毫秒

示例1

它总是会打印。

#[macro_use]
extern crate exec_time;

#[exec_time]
fn login() {
    std::thread::sleep(std::time::Duration::from_millis(100));
}

fn main() {
    login()
}
Time login: 102 mills

示例2

它只会在调试模式下打印。

#[macro_use]
extern crate exec_time;

#[exec_time(print = "debug")]
fn login() {
    std::thread::sleep(std::time::Duration::from_millis(100));
}

fn main() {
    login()
}
Time login: 102 mills

示例3

它永远不会打印。

#[macro_use]
extern crate exec_time;

#[exec_time(print = "never")]
fn login() {
    std::thread::sleep(std::time::Duration::from_millis(100));
}

fn main() {
    login()
}

示例4

它将打印,前缀和后缀与函数名一起。

#[macro_use]
extern crate exec_time;

#[exec_time(print = "always", prefix = "user/lib", suffix="route")]
fn login() {
    std::thread::sleep(std::time::Duration::from_millis(100));
}

fn main() {
    login()
}
Time user/lib::login::route: 102 mills

注意点

在这里 printprefixsuffix 都是可选字段。默认的 print 值是 always。print 可以是 always(默认),debugnever。如果是 always,则总是会打印。如果是 debug,则只会在调试模式下打印;否则,永远不会打印。

依赖项

~2.5MB
~53K SLoC