首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Rust 从入门到放弃
维维酱
创建于2025-02-12
订阅专栏
我的 rust 学习笔记
等 14 人订阅
共50篇文章
创建于2025-02-12
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
Rust - 用异步替代线程实现并发
异步不是"更快"的线程,而是更高效的I/O处理模型。它允许用同步代码风格写出非阻塞I/O逻辑,特别适合高并发网络服务。
Rust - async/await
Rust 的 async/await 语法是编写异步代码的核心工具,它允许我们用类似同步代码的风格编写高性能的非阻塞代码。
Rust - Futures
Future 代表一个可能尚未完成的计算结果(值)。 Future 是什么?(定义) 它是一个 Trait (接口/协议)。任何实现了 Future trait 的类型就是一个 Future。
并行 & 并发
我们经常把“并行”和“并发”混为一谈,但它们在实际工作中是有重要区别的。 🧑💼 用“团队开发软件”来比喻 想象一个团队在开发一个软件项目(比如一个手机App)。
一些基础概念
计算机处理某些任务需要时间,我们希望在等待时能做点别的事(并发)。操作系统提供了一种基础并发方式,但程序员可以做得更精细、更好。
Rust - Send & Sync
Rust 的 `Send` 和 `Sync` trait,这是 Rust 并发编程的核心机制,让 Rust 能在编译期防止数据竞争。
Rust - 多线程共享 Mutex<T>
Rust如何使用互斥锁实现多线程安全地共享数据:使用 Arc(原子引用计数)实现多线程间的安全共享;使用 Mutex(互斥锁)确保同一时间只有一个线程可以操作,避免数据竞争。
Rust - 读写锁 (RwLock)
读写锁是 Rust 中另一种重要的同步原语,它解决了互斥锁的一个关键限制:允许多个读取者同时访问数据,但只允许一个写入者。
Rust - 互斥锁
在 Rust 中,互斥锁(Mutex)是一种用于实现线程同步的机制,可防止多个线程同时访问共享资源,从而避免数据竞争(Data Race)。
Rust - 共享状态的并发
在 Rust 里,实现共享状态并发的核心在于“所有权 + 类型系统”。不同于传统语言依靠运行时检查,Rust 把并发安全问题前置到编译阶段解决,通过严格的规则来避免数据竞争。
Rust - 信道
在 Rust 中,信道(Channel) 是实现线程间通信(Inter-Thread Communication, IPC)的核心工具
Rust - 消息传递
Rust 主要通过通道(Channel)进行消息传递,它基于“共享内存不如传递消息”的理念。Rust 中消息传递的实现方式主要有以下几种
Rust - move 关键字
在 Rust 里,move 关键字的主要作用是把闭包外部的变量所有权转移到闭包内部。 所有权转移 在 Rust 中,闭包默认会借用变量。
Rust - 线程
在计算机科学里,线程是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。
Rust - 引用循环
在 Rust 中,引用循环(Reference Cycle)是指两个或多个对象通过引用彼此指向对方,形成一个闭环结构。
Rust - 结合 Rc<T> 、RefCell<T>
在 Rust 中,Rc<T>(引用计数智能指针)和 RefCell<T>(运行时借用检查)是两个重要的工具,它们通常结合使用以实现多个所有者共享可变数据的场景。
Rust - 内部可变性模式
在 Rust 里,内部可变性模式是一种十分重要的编程模式。它允许我们在拥有不可变引用的情况下对数据进行修改,从一定程度上突破了 Rust 常规的借用规则。
Rust - RefCell<T>
在 Rust 里,RefCell<T> 属于标准库中的一个类型,它能够实现内部可变性。 所谓内部可变性,就是指即便是在持有不可变引用的时候,依然可以对数据进行修改。
Rust - Rc<T>
在 Rust 里,Rc<T>(引用计数智能指针)是实现共享所有权的工具。要是你需要让多个变量拥有同一数据的所有权,就可以借助 Rc<T> 来达成。
Rust drop 函数
在 Rust 中,drop 函数是一个非常实用的工具,用于管理对象的生命周期,特别是在需要提前释放资源的场景中。
下一页