首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Rust
浦东大花菜
创建于2024-08-08
订阅专栏
Rust相关笔记
等 3 人订阅
共10篇文章
创建于2024-08-08
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
Rust-智能指针
智能指针在 Rust 里非常重要,因为它们能够帮助管理内存、实现特定的功能,例如自动内存回收、引用计数等。Rust 标准库中提供了多种智能指针,常见的有 Box<T>、Rc<T>、Arc<T> 和 R
Rust-代码组织(package crate module)
代码组织结构 Rust在语言层面提供了3个代码管理单元,分别是: package:一个package可以视为一个项目,cargo new 命令创建的就是package crate:Rust编译的最小单
Rust-MarkTrait-Send、Sync
Send和Sync是 Rust 安全并发的重中之重,但是实际上它们只是标记特征(marker trait,该特征未定义任何行为,因此非常适合用于标记), 来看看它们的作用: 实现Send的类型可以在线
Rust-Pin
自引用问题 Test 类型提供了方法,来获取字段 a 或 b 的引用。因为 b 是指向 a 的引用,但由于 Rust 的借用规则,我们不能定义它的生命周期(lifetime),所以我们把它存成指针。这
Rust-异步-异步机制和Future
简介 简化版 future trait看起来可能像这样: Future 能通过调用 poll 的方式推进,这会尽可能地推进 future 到完成状态。如果 future 完成了, 那就会返回 poll
Rust-异步-Async/Await
通过 async 标记的语法块会被转换成实现了Future特征的状态机。 与同步调用阻塞当前线程不同,当Future执行并遇到阻塞时,它会让出当前线程的控制权,这样其它的Future就可以在该线程中运
Rust-异步-线程与通道
线程 线程的创建与使用 创建线程通常被称为 产生线程 (spawning thread)。我们使用 std::thread::spawn 函数,该函数接收一个 FnOnce 型的闭包, 我们产生的子线
Rust-全局/静态变量/常量
const常量 全局常量可以在程序任何一部分使用,当然,如果它是定义在某个模块中,你需要引入对应的模块才能使用。常量,顾名思义它是不可变的,很适合用作静态配置: 常量与普通变量的区别 关键字是cons
Rust-裸指针和unsafe
裸指针 特点 可以绕过 Rust 的借用规则,可以同时拥有一个数据的可变、不可变指针,甚至还能拥有多个可变的指针 并不能保证指向合法的内存 可以是 null 没有实现任何自动的回收 (drop) 创建
Rust-解引用与Deref trait
Deref trait *的意义 在我们使用*对y进行解引用时,编译器实际帮我们做的是, *运算符包含两个行为:一个朴素的解引用* + deref()。首先通过deref获得一个引用,再使用朴素的解引