3 个版本

使用旧的 Rust 2015

0.0.3 2017年2月7日
0.0.2 2017年2月7日
0.0.1 2017年1月29日

#431日期和时间

Download history • Rust 包仓库 370/week @ 2024-03-02 • Rust 包仓库 389/week @ 2024-03-09 • Rust 包仓库 275/week @ 2024-03-16 • Rust 包仓库 231/week @ 2024-03-23 • Rust 包仓库 310/week @ 2024-03-30 • Rust 包仓库 141/week @ 2024-04-06 • Rust 包仓库 222/week @ 2024-04-13 • Rust 包仓库 172/week @ 2024-04-20 • Rust 包仓库 106/week @ 2024-04-27 • Rust 包仓库 247/week @ 2024-05-04 • Rust 包仓库 203/week @ 2024-05-11 • Rust 包仓库 171/week @ 2024-05-18 • Rust 包仓库 155/week @ 2024-05-25 • Rust 包仓库 178/week @ 2024-06-01 • Rust 包仓库 251/week @ 2024-06-08 • Rust 包仓库 161/week @ 2024-06-15 • Rust 包仓库

每月下载量 776

自定义许可

50KB
1K SLoC

Rust 库,用于处理 Temporenc 二进制日期/时间格式。

对于此实现,高性能是首要任务。它为每个时间类型(日期、日期和时间等)使用不同的结构体。这允许为每个类型手动调整序列化和反序列化逻辑。当然,除了测试代码之外,没有堆分配。

以下是一些来自 i7-6850K(3.6GHz 的 Broadwell-E 芯片)的性能示例。使用 100 批次,因为当单个操作仅需要几纳秒时,时间测量精度较差。

操作 数量 类型 时间
反序列化 100 随机日期 665ns
反序列化 100 随机日期 + 时间 985ns
反序列化 100 随机日期 + 时间 + 偏移量 974ns
反序列化 100 随机日期 + 时间 + 微秒 1300ns
反序列化 100 随机日期 + 时间 + 微秒 + 偏移量 1473ns
反序列化 100 随机时间 801ns
序列化 100 随机日期 288ns
序列化 100 随机日期 + 时间 435ns
序列化 100 随机日期 + 时间 + 偏移量 492ns
序列化 100 随机日期 + 时间 + 微秒 897ns
序列化 100 随机日期 + 时间 + 微秒 + 偏移量 982ns
序列化 100 随机时间 277ns

没有运行时依赖项