< 返回版块

gensmusic 发表于 2024-02-26 17:31

如何处理异步清理代码

这篇文章讨论了Rust异步编程中的一个挑战:如何处理异步清理代码。当前的异步Rust没有好的机制来处理需要在使用后执行的非阻塞清理代码。作者考虑了在析构函数中使用await的可能性,但由于多种技术和设计挑战,这看起来不太现实。

作者提出了几个关于异步清理的解决方案,包括"do...final"代码块,以及提出了可能的API变动,如增加poll_cancel函数支持异步取消操作。文章还探讨了线性类型和不可丢弃的类型等概念,这些概念旨在确保类型在作用域结束时总是执行清理代码,无论是同步还是异步。最后,强调了为了实现这些功能,需要底层的运行时系统和语言特性的更新和支持。

原文链接

在终端里玩Hattrick

ssHattrick是一款多人游戏,你可以通过SSH来玩。它是流行游戏 Hattrick 的 Rust 克隆版本。

img

github 地址

OasysDB: 可嵌入的向量数据库

OasysDB是一款可嵌入式的、高效且易于使用的向量数据库。它被设计成一个库,可以嵌入到您的AI应用程序中。OasysDB用Rust编写,并使用Sled作为其持久性存储引擎,将向量集合保存到磁盘上。

OasysDB实现了HNSW(分层可导航小世界)作为其索引算法。这是一个尖端算法,被许多向量数据库所使用。它速度快、内存效率高,且能很好地扩展到大型数据集。

目前 0.2 版本已经发布.

github 地址

ESP嵌入式Rust开发

在这篇文章中,使用Rust语言和标准库构建了一个在ESP32C3上运行的ping CLI应用程序。支持主机名和选项。此外,作为输出的一部分,还会报告ping的统计信息。

原文链接

--

From 日报小组 BobQ, FBI小白

社区学习交流平台订阅:

评论区

写评论

还没有评论

1 共 0 条评论, 1 页