Rust有办法让程序可插拔吗.在C语言中,我创建的插件是.所以我用dlopen加载的文件.Rust 是否提供了一种做同样事情的原生方式?

推荐答案

Rust FAQ人正式支持libloading人.除此之外,我知道有三种不同的 Select :

我还没有try 过这些,所以我真的不能说哪一个是best,或者不同变体的优缺点是什么.我强烈建议against至少使用std::dynamic_lib,因为它已被弃用,而且在future 某个时候可能会被私有化.

Rust相关问答推荐

使用windows crate Rust 展示windows

如何从使用mockall模拟的方法中返回self?

如何从铁 rust 中呼唤_mm_256_mul_ph?

MutexGuard中的过滤载体不需要克隆

无法将记录器向下转换回原始 struct

将数组转换为HashMap的更简单方法

了解Rust';s特征对象和不同函数签名中的生存期注释

为什么将易错函数的泛型结果作为泛型参数传递 infer ()?不应该是暧昧的吗?

RUST 中的读写器锁定模式

需要哪些编译器优化来优化此递归调用?

由特征键控的不同 struct 的集合

使用自定义 struct 收集 Vec

为什么会出现无法移出可变引用后面的 `self.x`错误?

如何在 Rust 中返回通用 struct

`use std::error::Error` 声明中断编译

字符串切片的向量超出范围但原始字符串仍然存在,为什么判断器说有错误?

如何在 C++ 和 Rust 之间共享 pthread 同步原语?

在空表达式语句中移动的值

为什么我可以从读取的可变自引用中移出?

BigUint 二进制补码