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
4KB
62 行
Rust函数的时间测量
它将简单地打印函数的执行时间
用法
[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
注意点
在这里 print
、prefix
和 suffix
都是可选字段。默认的 print 值是 always
。print 可以是 always
(默认),debug
,never
。如果是 always
,则总是会打印。如果是 debug
,则只会在调试模式下打印;否则,永远不会打印。
依赖项
~2.5MB
~53K SLoC