异步运行时
2025/1/12小于 1 分钟hyperlanewebrustusage-introductionasync
提示
由于 hyperlane 框架使用 tokio 作为异步运行时
示例代码
#[tokio::main]
async fn main() {
Server::new().run().await.unwrap().wait().await
}提示
由于 hyperlane 框架 stream 采取 tokio中的异步读写锁实现内部可变性,所以涉及到 stream 的方法调用均需要 await。
示例代码
#[tokio::main]
async fn main() {
Server::new().run().await.unwrap().wait().await
}提示
如果 需要在异步中使用 Context 请使用 Context 中的 clone 方法,原因是框架内Context 分配在堆上,请求完成后会回收堆上内存,不保证线程安全(例如并发更新 Context 上的数据),如果需要安全操作请使用上述方法。