
Rust探秘
文章平均质量分 89
唯你Only
https://blog.only1u.org
展开
-
Cargo deny安装指路
cargo deny 是一个 Rust 工具,用于检查项目依赖项的许可证、安全性和其他合规性问题。**许可证检查:**确保项目使用的所有依赖项的许可证都符合项目的许可政策。**安全漏洞扫描:**检查依赖项是否存在已知的安全漏洞。**依赖项合规性:**验证依赖项是否符合项目的其他要求,如版本限制或来源限制。**禁用特定依赖项:**允许明确禁止使用某些依赖项。在 CI 流程中,cargo deny 通常作为一个检查步骤运行,以确保项目在构建和部署之前满足所有合规性要求。原创 2024-11-12 07:54:48 · 808 阅读 · 0 评论 -
Rust中的并发性:Sync 和 Send Traits
类型为Sync(原始/不可变类型)封装在互斥或原子类型中(Mutex、RwLock、Atomic*)使用像通道这样的消息传递技术来跨线程传递数据的所有权。要创建自定义类型Sync或Send,您只需实现类型的Sync和Sendtrait。这里有一个 持有裸指针*const u8的MyBox结构体, 由于只要复合类型中有一个成员不是 Send 或者 Sync,那么该类型也就不是 Send 或 Sync。裸指针*const u8均未实现Send和Sync Trait故MyBox复合类型也不是Send。原创 2024-04-30 15:40:29 · 1743 阅读 · 4 评论 -
如何将rust日志输出到android终端
在 Rust 中,使用 println!打印日志时,输出实际上是发送到标准输出(stdout),而 Android Logcat 专门用于处理和显示应用程序的日志信息,此环境下标准输出实现被重新定义。这意味着 Rust 日志输出不会出现在 Logcat 中。原创 2024-10-24 09:30:27 · 755 阅读 · 0 评论 -
一文解秘Rust如何与Java互操作
该项目为 Rust 提供了完整的 JNI 绑定,允许:使用 Rust 代码与 Java 库进行交互,调用 Java 方法和访问 Java 对象。从 Rust 代码中使用 Java 类和接口。实现跨语言的高效数据交换。利用 Rust 的性能优势和 Java 的成熟生态系统跨平台 UI 框架 Flutter 源码中的 MethodChannel 实现了 Dart 与 Android 层的通信,其底层 C++也是通过 JNI 调用插件中的 onMethodCall 来实现的。原创 2024-11-06 07:24:23 · 1271 阅读 · 0 评论