rust - 如何在另一个线程上读取标准输入的同时写入自己的进程标准输入
问题描述
我正在一个线程上从标准输入读取并根据输入执行逻辑。
我有一种情况,我想从另一个线程写入我自己的进程STDIN
(由该其他线程上下文中的现有逻辑处理,如果可能,不修改任何代码)。
这可能吗?不知道如何做到这一点。
我尝试了(不成功)这样的事情:
std::thread::spawn(|| {
// my own stdin
let stdin = std::io::stdin();
while true {
// write to my own stdin - doesn't work!
stdin.write_all(b"Hello, world!\n");
sleep(Duration::from_secs(1));
}
});
解决方案
推荐阅读
- python - Numpy数组的最小差异
- eclipse - 是否可以在 Eclipse 运行配置中跳过 maven-javadoc-plugin 执行?
- node.js - 异步加载画布对象的图像
- python - 替换单词和字符串 pandas
- acumatica - 如何将站点 ID (Whse) 选择限制为仅当前分支?
- prolog - 列出大小乘法
- php - 我如何从 SQL 字符串调用 php Require
- metal - 是否可以同时在两个或多个 GPU 上运行 Metal 代码?
- angularjs - 我是 Angular 的初学者。我应该从 AngularJS 开始还是直接跳到可用的最新版本?
- visual-studio - Qt - 使用 Visual Studio 构建的 exe 中的资源总是丢失