腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
返回腾讯云官网
程序员
专栏作者
举报
513
文章
631049
阅读量
26
订阅数
订阅专栏
申请加入专栏
全部文章
编程算法
python
c++
linux
http
django
sql
打包
rust
网站
数据库
网络安全
tcp/ip
ide
java
qt
git
https
c 语言
单片机
unix
面向对象编程
html
缓存
api
函数
c#
ubuntu
php
javascript
go
云数据库 SQL Server
容器
存储
文件存储
shell
opencv
gcc
数据结构
数据
bash
汇编语言
github
容器镜像服务
udp
程序
教程
json
命令行工具
二叉树
windows
vhdl
框架
设计
css
云数据库 Redis
腾讯云测试服务
unicode
ip
编译器
操作系统
定时器
进程
通信
线程
指针
node.js
android
arm
硬件开发
开源
爬虫
ssh
正则表达式
socket编程
class
debug
init
int
posix
self
set
对象
路由器
系统
异步
机器学习
bootstrap
sqlite
sqlalchemy
bash 指令
神经网络
深度学习
访问管理
人工智能
jvm
ftp
iis
安全
迁移
clone
filter
static
std
wait
闭包
变量
编译
测试
程序设计
多线程
服务器
计算机
交换机
客户端
连接
内存
生命周期
同步
字符串
作用域
其他
官方文档
jquery ui
xml
jquery
typescript
ecmascript
opengl
makefile
mvc
web.py
apache
nginx
NAT 网关
海外加速
SSL 证书
云推荐引擎
mongodb
图像处理
企业
xslt & xpath
serverless
游戏
分布式
黑客
数据迁移
html5
dns
hashmap
单元测试
kernel
机器人
数据分析
安全漏洞
nat
openapi
processing
防火墙
utf8
ascii
智能推荐平台
agent
bit
block
boolean
chmod
client
commit
count
draw
email
ethernet
exit
firefox
header
insert
intel
join
lan
lock
logic
ls
math
max
meta
mime
module
mutex
null
object
package
path
pip
postman
private
process
push
python3
random
scanf
send
server
string
table
timeout
vector
void
volatile
window
x86
xor
编程
遍历
并发
磁盘
递归
工作
集合
计算机网络
开发
路由
面试
内核
权限
日志
软件
事件
数据类型
数学
数组
算法
调试
推送
网关
性能
硬件
语法
原理
源码
源码分析
原型
主机
装饰器
搜索文章
搜索
搜索
关闭
Rust源码分析——Rc 和 Weak 源码详解
rust
数据
源码
源码分析
指针
rust 通过使用引用计数智能指针 Rc 和 Arc 来解决上面的问题。当我们对一个被 Rc 所标识的数据进行 clone() 的时候,并不会复制其内部数据,只是增加引用计数,而当一个 Rc 被 drop 的时候,只会减少其引用计数,直到引用计数为0,此时才会真正清除对应的内存。
zy010101
2023-09-11
338
0
rust中的reborrow和NLL
rust
编译器
函数
生命周期
指针
我们知道可变引用是没有实现Copy trait的,因此,当ref1传递给add函数之后,其所有权应该被转移到add函数内,之后应该无法使用ref1,但是上面这段代码是可以编译,运行的。这是为什么呢?
zy010101
2023-09-06
327
0
rust声明式宏
rust
int
编译
函数
调试
在 rust 中,我们一开始就在使用宏,例如 println!, vec!, assert_eq! 等。看起来宏和函数在使用时只是多了一个 !。实际上这些宏都是声明式宏(也叫示例宏或macro_rules!),rust 还支持过程宏,过程宏为我们提供了强大的元编程工具。
zy010101
2023-07-24
271
0
warp框架教程5-Filter系统中各个模块
filter
服务器
教程
框架
系统
any 模块只有一个方法,就是 any 方法,它可以匹配任何路由的过滤器。我们可以使用 any 方法将一些可克隆的资源转换成一个过滤器,从而允许轻松地将它与其他 Filter 结合在一起。当然也可以使用 any 方法创建适用于多个 Filter 的末尾调用的 Reply。例如:
zy010101
2023-07-24
175
0
warp框架教程4-Filter系统中的方法介绍
filter
函数
教程
框架
系统
过滤器可以选择性地从 request 中提取一些数据,将其与其他数据组合、修改,并将某个值作为 response 返回。过滤器的强大之处在于能够将其拆分为小的子集,然后在应用程序的各个部分中进行链式调用和重用。
zy010101
2023-07-24
270
0
warp框架教程3-path, method和自定义请求方法
path
函数
教程
框架
路由
path 是 warp 中的路由系统, 一个 web 框架的灵魂所在, 一个优美的路由系统可以给我们带来非常良好的使用体验, 而 warp 的路由体验本身就是非常 nice 的。在本文中将展示一个 RESTful 风格的 API 设计。下面先来学习一下 path 模块。
zy010101
2023-07-11
331
0
warp框架教程2-log模块,addr模块和header模块
header
教程
客户端
框架
日志
从本文开始,我们将介绍 warp 中 Filter 的核心模块。在文档中有 filter 相关模块的介绍, 本文来介绍其中的 addr,header 和 log
zy010101
2023-07-11
223
0
rust warp框架教程1-helloworld
rust
服务器
教程
框架
异步
warp is a super-easy, composable, web server framework for warp speeds.
zy010101
2023-07-11
560
0
rust类型转换
rust
clone
编译器
指针
字符串
Rust 不提供原生类型之间的隐式类型转换(coercion),但可以使用 as 关键字进行显式类型转换(casting)。例如:
zy010101
2023-06-10
558
0
rust多线程
rust
多线程
内存
数据
线程
在rust中,多线程编程不算困难,但是也需要留心和别的编程语言中不同的地方。rust的标准库中提供的thread库来帮助我们进行多线程编程。在使用的时候需要使用use std::thread来引入thread库即可。
zy010101
2023-05-28
849
0
rust迭代器
rust
闭包
遍历
对象
数组
迭代器模式允许你对一个序列的项进行某些处理。迭代器(iterator)负责遍历序列中的每一项和决定序列何时结束的逻辑。当使用迭代器时,我们无需重新实现这些逻辑。
zy010101
2023-05-26
393
0
rust智能指针
rust
函数
数据
性能
指针
智能指针虽然也号称指针,但是它是一个复杂的家伙:通过比引用更复杂的数据结构,包含比引用更多的信息,例如元数据,当前长度,最大可用长度等。引用和智能指针的另一个不同在于前者仅仅是借用了数据,而后者往往可以拥有它们指向的数据,然后再为其它人提供服务。智能指针往往是基于结构体实现,它与我们自定义的结构体最大的区别在于它实现了 Deref 和 Drop 特征:
zy010101
2023-05-09
1.1K
0
rust闭包(Closure)
rust
闭包
变量
编译器
函数
闭包在现代化的编程语言中普遍存在。闭包是一种匿名函数,它可以赋值给变量也可以作为参数传递给其它函数,不同于函数的是,它允许捕获调用者作用域中的值。Rust 闭包在形式上借鉴了 Smalltalk 和 Ruby 语言,与函数最大的不同就是它的参数是通过 |parm1| 的形式进行声明,如果是多个参数就 |param1, param2,…|, 下面给出闭包的形式定义:
zy010101
2023-04-27
598
0
编写rust测试程序
单元测试
rust
测试
函数
数据
当使用 Cargo 创建一个 lib 类型的包时,它会为我们自动生成一个测试模块。先来创建一个 lib 类型的 adder 包。创建成功后,在 src/lib.rs 文件中可以发现如下代码:
zy010101
2023-04-24
1.2K
0
rust的package,crate,module
module
package
编译
函数
作用域
rust提供了非常优秀的包管理器cargo,我们可以使用crate,module,package来组织代码。
zy010101
2023-04-06
528
0
Rust错误处理
rust
程序
对象
函数
线程
不可恢复错误通常是非常严重的,例如:程序一开始读取配置文件失败或者连接数据库失败,诸如此类导致程序运行发生致命错误的,可以使用不可恢复错误。在rust中,触发不可恢复错误使用panic即可。 触发panic可以分为被动触发和主动调用两种方式。
zy010101
2023-03-27
628
0
rust生命周期
rust
self
static
编译器
生命周期
生命周期是rust中用来规定引用的有效作用域。在大多数时候,无需手动声明,因为编译器能够自动推导。当编译器无法自动推导出生命周期的时候,就需要我们手动标明生命周期。生命周期主要是为了避免悬垂引用。
zy010101
2023-03-17
324
0
rust的vector和hashmap
hashmap
rust
insert
push
vector
在大多数语言中都会提供动态数组这样基础的数据结构。rust也不例外。动态数组允许我们存储多个值,这些值在内存中一个紧挨着另一个排列。动态数组中只能存储相同类型的元素。
zy010101
2023-03-15
458
0
Rust特征对象(Trait Object)
clone
draw
object
self
string
前面学习的泛型,特征。它们都只能实现静态多态。它们和类型的绑定发生在编译期。如何让其实现C++中“父类指针指向子类对象”,从而实现运行时的多态。为了解决这个问题,Rust引入了——特征对象。
zy010101
2023-03-15
748
0
Rust特征(Trait)
c++
特征(Trait) 特征(trait)是rust中的概念,类似于其他语言中的接口(interface)。在之前的代码中,我们也多次见过特征的使用,例如 #[derive(Debug)],它在我们定义的
zy010101
2023-03-09
544
0
点击加载更多
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
立即发文
Python精品学习库
代码在线跑,知识轻松学
立即查看
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
立即体验
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
立即查看
领券
问题归档
专栏文章
快讯文章归档
关键词归档
开发者手册归档
开发者手册 Section 归档