前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【Rust日报】2024-05-09 使用 Tokio 编写多线程聊天服务器

【Rust日报】2024-05-09 使用 Tokio 编写多线程聊天服务器

作者头像
MikeLoveRust
发布2024-05-11 10:58:42
930
发布2024-05-11 10:58:42
举报

项目 - ctreg ,编译时正则表达式

ctreg 是一个用于编译时处理正则表达式的库,其核心理念是在编译阶段就处理正则表达式,以提高运行效率并避免运行时错误。

  • 正则表达式在编译时就已确定,无需在运行时解析,从而加快正则表达式对象的构建速度,同时避免了运行时可能出现的解析错误。
  • ctreg 同样生成一个包含所有命名捕获组的类型,这种方法较之在运行时通过字符串或数字键访问捕获组的传统方式提供更好的用户体验。

尽管声称 "编译时正则表达式",但是 ctreg 实际完成的工作相当于是在编译时进行解析和验证,详细讨论可以参考下面的 Reddit 帖子,其中包含了 regex crate 作者 burntsushi 对这个库的相关讨论 。

docs.rs - ctreg: https://docs.rs/ctreg/latest/ctreg/

New crate announcement: ctreg! : https://www.reddit.com/r/rust/comments/1cmxydb/new_crate_announcement_ctreg_compiletime_regular/

教程 - 使用 Tokio 编写多线程聊天服务器

来自 @pretzelhammer 的渐进式教程,面向并发编程初学者,展示了如何使用 Rust 和 Tokio 实现一个多线程聊天服务器。

代码语言:javascript
复制
$ just telnet # concurrent client 1
> 1: hello # msg 1
1: hello ❤️
> 1: anybody there? # msg 2
1: anybody there? ❤️
2: i am right here ❤️
2: how are you ❤️
> 1: i am doing great # msg 5

除了聊天服务器相关功能的代码实现之外,文章还介绍了关于 Future、锁、错误处理的一些相关知识。

Beginner's Guide to Concurrent Programming: Coding a Multithreaded Chat Server using Tokio : https://github.com/pretzelhammer/rust-blog/blob/master/posts/chat-server.md

This Week In Rust 546

新一期的 Rust 周报速递发布,快来看看有哪些内容你曾经关注过 :)

This Week In Rust 546: https://this-week-in-rust.org/blog/2024/05/08/this-week-in-rust-546/

From 日报小组 PsiACE

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2024-05-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Rust语言学习交流 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 项目 - ctreg ,编译时正则表达式
  • 教程 - 使用 Tokio 编写多线程聊天服务器
    • This Week In Rust 546
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档