加载中
[译]深入理解异步-async

async, await特性的加入使得Rust中的异步编程变得像nodejs, go一样变得简单易用,极大提高了Rust异步编程的幸福感。 理解异步编程一直是初学者的难点,本篇文章参考async-book, tokio官网的例...

07/13 22:28
65
[转][译]使用 Rust 构建你自己的 Shell

https://juejin.cn/post/6844903847245119496

07/08 17:44
32
Rust生命周期疑难解析

生命周期一直是Rust中比较难掌握的特性之一,本文不会介绍生命周期的基础概念和一般规则,而是举几个难以理解的例子来加深理解。 1. 闭包参数引用的生命周期 定义一个如下函数 fn call_on_r...

06/13 11:46
102
Rust中的内存泄露,循环引用

Rust是一门内存安全的语言,只要不使用unsafe, 我们可以放心大胆的像使用具有GC的语言一样,无需自己管理内存。 而内存泄露,却不属于内存安全问问题,而是属于编程逻辑问题,因而编译器无法...

05/31 21:53
105
Rust代码规范/风格/哲学

Rust作为一门现代化的具有多编程范式的语言,有着独特的代码规范,代码风格, 代码哲学 https://github.com/rust-lang/api-guidelines https://www.aloxaf.com/2019/11/elegant_apis_in_rust/...

Rust并发编程之多线程

Rust对并发编程提供了非常丰富的支持,有传统的多线程方式,也提供流行的异步原语async, await,本篇文章主要介绍多线程方面的基本用法。以下将分为5部分进行讲解 线程的创建 锁 原子变量 管...

05/02 22:17
78
[转][荐]透过 Rust 探索系统的本原

最近看到陈天大佬在知乎发的 透过 Rust 探索系统的本原系列文章,真是醍醐灌顶,让我的编程认知上升了一个层次,无以为报,在这里强烈推荐: 透过 Rust 探索系统的本原:编程语言 https://zh...

05/02 11:06
27
Rust实战之使用Nom 解析 Http Response 消息

相信大多数做业务开发的同学,调用的业务服务大多以Restfull API的形式存在,特别是跨部门调用或公司外部的API服务。 这时一个用于发送请求的http client是必不可少的,如果你保持好奇心, ...

Rust 中的 thread_local

如果要实现一个进程内的缓存,则可以简单的使用一个全局Map, 加上锁来实现。如果每个线程需要有自己的数据,且线程之间的数据不相互影响,全局map的方式就不太好,此种方式会有锁开销,也比较...

03/27 23:01
325
Rust 资源集合 & 各种 book

1. Rust API 规范 https://rust-lang.github.io/api-guidelines/dependability.html https://doc.rust-lang.org/1.0.0/style/README.html https://rust-unofficial.github.io/patterns/ http...

03/14 10:58
129
Rust中的幽灵数据 PhantomData

PhantomData, 虚类型数据,也叫幽灵数据,按照字面意思,该数据类型虚无缥缈,就像不存在一样。在Rust中PhantomData不占用内存空间,那它能有什么用武之地么?我们先来看下该数据类型的定义:...

Rust错误处理

错误处理是程序设计语言中的重要组成部分,是程序开发工作中最重要,也最容易出问题的地方之一。语言的错误处理机制体现了该语言的特点。 错误处理主要分为以下几种 1. 使用全局错误来作为错...

[转]Rust世界里的类型大小

基本上,每一门语言中或多或少的可以知道数据类型的大小,比如c, java, c#, javascript. 拥有GC的语言或者解释性语言,基本上只有基本类型有大小,比如byte, char, int, double,这些数据类型...

02/18 22:20
86
[转]Rust Async/Await文章合集

Rust中的Asyn/Await是Rust2020的新特性,它的出现使得Rust在异步开发领域大大往前踏进了一步,以下是异步相关的博客。 https://os.phil-opp.com/async-await/#multitasking 中文版发布在了微...

02/12 11:02
51
Rust中的裸指针

Rust中存在着4种指针 引用 references 胖指针 fat pointers” 智能指针 smart pointers 裸指针 raw pointers 各个指针的区别可在这里看 https://zhuanlan.zhihu.com/p/76945648 Rust中,不同...

02/08 12:20
371
Rust中的内部可变性: Cell与RefCell

在Rust中,可变性需要使用mut声明,编译器在编译期检查代码是否违反可变性规则,这在大多数时候是非常好的。然而这条规则如此严格,以至于有时候在设计API时,不得不额外的添加很多和主旨无关...

2020/12/28 21:43
143
Rust const, static使用面面观

在软件开发过程中,如果一个变量总是保持不变,我们可以声明为常量,如果一个变量全局唯一,可以使用静态变量,如果既是常量又是全局变量,则可以同时声明这2种特性,例如java可以这样 publ...

2020/12/04 15:08
94
Rust 实现Drop trait 避免堆栈溢出

在Rust中,每一个变量内存被释放时,都会调用他自己的析构函数(Drop trait中的drop方法)。一般情况下,我们不需要也没必要自己实现Drop trait, 编译器会给我们帮忙实现一个默认的。 但如果你...

2020/11/28 00:33
218
Rust IO 操作简介

任何一门编程语言中 IO操作都是非常常见的内容. IO操作抽象了对实体的读写,该实体可以是任意类型,比如文件,内存,或者Socket。 典型的IO操作包含 读写操作, 大多数编程语言还会提供基于字...

2020/11/26 23:35
112
Rust实用教程之 - Hello world

Rust是一门非常有特点的现代化系统编程语言: 高性能,无GC, 静态类型、内存安全、函数式,借鉴了C++, Haskell, Scala的多种语言的特性,具备多种编程范式。应用场景非常广泛,涵盖操作系统,...

2020/10/24 13:24
111

没有更多内容

加载失败,请刷新页面

返回顶部
顶部