Rust 中的链接 #[linkage = "xxx"]

Rust 中有一个方便的注解 #[linkage],这是一个不稳定的 feature,网上关于它的 信息基本找不到,在我搜索半天后,在 Github 上找到了一个 tracking issue: rust-lang/rust issue#29603 ...

七月 5, 2023 · 4 min · sslime336

Rust Memory Ordering

内存排序相对来说比较底层,对于不同的 CPU 硬件设计都有可能不同 ...

六月 13, 2023 · 1 min · sslime336

Rust 根据 debug/release 构建模式进行条件编译

可通过 #[cfg(debug_assertions)] 和 #[cfg(not(debug_assertions))] 来控制 Reference: https://doc.rust-lang.org/reference/conditional-compilation.html#debug_assertions ...

六月 13, 2023 · 1 min · sslime336

在 Docker 中使用 rust-nightly toolchain 构建

一般来说,Rust 的 Docker 镜像可以选择 rust:latest 但是这并没有提供 rust-nightly 的环境,解决办法有两个: ...

六月 1, 2023 · 1 min · sslime336

tokio tracing

本文简单总结了 tracing 和 tracing-subscriber 的使用,详细内容请参阅官方文档: tracing: https://docs.rs/tracing/latest/tracing/index.html tracing-subscriber: https://docs.rs/tracing-subscriber/latest/tracing_subscriber/ tracing 是一个由 tokio 开发并维护 的框架,这个框架用于对 Rust 程序进行检测,收集结构化、事件驱动的诊断信息。 部分翻译自: https://github.com/tokio-rs/tracing#overview ...

五月 31, 2023 · 1 min · sslime336

Box 指针导致栈溢出

下面这段代码会爆栈: fn main() { let _b = Box::new([0; 1024 * 4096]); } ...

二月 6, 2023 · 1 min · sslime336