让 Rust 编译器快 5% 的奇怪窍门
在 Linux 上,如果您启用了 Transparent Huge Pages,则可以尝试使用环境变量 MALLOC_CONF="thp:always,metadata_thp:always"
运行 cargo 以获得潜在的约 5% 的速度提升。
$ export MALLOC_CONF="thp:always,metadata_thp:always"
$ cargo build
原文链接 https://kobzol.github.io/rust/rustc/2023/10/21/make-rust-compiler-5percent-faster.html
在 smol 中重构 并发 futures combinators
smol 是一个小型、快速的 Rust 异步库。它提供了一个简单的 API,用于并发地执行 futures。
futures combinators 是用于组合 futures 的函数。它们可以用于实现复杂的并发操作,例如并行执行 futures、等待多个 futures 完成、或将多个 futures 合并为一个 future。
本文介绍了如何在 smol 中实现 futures combinators。
原文链接 https://notgull.net/futures-concurrency-in-smol/
dioxus-material: dioxus + material design
这是一个 UI 框架, dioxus 中可以用的 material design, 目前项目刚开始.
使用例子:
Theme {
Button { onclick: |_| log::info!("clicked!"), "Click me!" }
Icon { kind: IconKind::Home, is_filled: true, size: 100. }
TextButton { onclick: |_| log::info!("clicked!"), "Click me!" }
TabRow {
onselect: |idx| log::info!("{}", idx),
tabs: cx
.bump()
.alloc([
render!(Tab { "Tab 1" }),
render!(Tab { "Tab 2" }),
render!(Tab { "Tab 3" }),
])
}
TextField {
label: "Text field",
value: "{value}",
onchange: move |event: FormEvent| value.set(event.value.clone())
}
}
原文链接 https://github.com/matthunz/dioxus-material
预览地址 https://matthunz.github.io/
--
From 日报小组 BobQ, FBI小白
社区学习交流平台订阅:
Rustcc论坛: 支持rss
微信公众号:Rust语言中文社区