阿萍的博客

阿萍的博客

在同步函数中调用异步函数

可以用 async 关键字将异步函数进行包裹:#[test] fn async_webm_test() { let pieces = vec![ ...

异步 filter

filter 参数一般是个同步闭包,如果需要传入异步函数,可以使用 try_filter,条件使用 future::ready() let mut chunk_stream: BoxedCh...

捕捉 ctlr+c 信号

从 tokio::signal::ctrl_c() 收到消息,便说明收到了 ctrl+c 信号。 tokio::select! { // pass the multistre...

使用 LLVM 实现一门简单的语言

本文跟着 LLVM Tutorial 教程完成,加上了一些注释。本文中的代码并非工程最佳实践。1 目标用 LLVM 实现一门简单的语言 Kaleidoscope,实现对如下代码的编译运行:# 斐...

docker login 免证书

sudo vim /etc/docker/daemon.json添加:{ ... "insecure-registries": ["https://xxxx...

docker & docker-compose

1 docker 镜像制作示例本章以将 rustdesk-server-demo 制作为 docker 为例,讲述 docker 镜像制作过程。1.1 编译得到可执行的二进制文件安装好 rust...

ssh 免密登录

1 目标在机器 a 执行 ssh 命令登录到机器 b 时,不需要输入密码。2 实现在机器 a 上,查看是否有公钥 ~/.ssh/id_rsa.pub,如果没有,则生成:ssh-keygen ...

同步/异步和阻塞/非阻塞的区别

根据应用程序是否阻塞自身运行,可以把 I/O 分为阻塞 I/O 和非阻塞 I/O。所谓阻塞 I/O,是指应用程序在执行 I/O 操作后,如果没有获得响应,就会阻塞当前线程,不能执行其他任务。所谓...

nvidia 升级

报错:NVIDIA NVML Driver/library version mismatch解决:删除已有的 nvdia:sudo apt-get --purge remove "*n...

新版 Tokio 调度器性能提升10倍

调度器的优化围绕以下几个方面展开:新的 std::future 任务系统更好的队列算法优化消息传递模式改进的“任务窃取”算法减少跨线程同步减少内存分配减少原子的引用计数1 调度器如何工作当涉及线...