我正在用C ++编写控制台模拟器。我希望能够#34;跳进去"它正在运行。看看这个简单的例子:
#include <iostream>
int main(){
std::string input;
std::cin >> input;
std::cout << input;
}
我想在服务器上(本地)运行此程序,然后通过SSH连接到此服务器,并以某种方式将输入插入到正在运行的程序中。我也希望能够收到它的输出。这里的要点是,我不能运行多个仿真器实例。它必须一直运行,人们需要能够连接到它。它甚至可能吗?是否有与此主题相关的教程?
答案 0 :(得分:1)
有多种方法可以做到这一点。请考虑以下事项:
答案 1 :(得分:1)
你想要的是一个命令处理器添加到你的程序: 在一个单独的线程上,监听linux套接字的命令;这一切都归结为在你的过程中读取套接字,从任何你想要的地方写入它。
请注意,从套接字读取数据可能会非常棘手,并且您不希望等待数据卡住或等待处理时间等待数据到达 - 但这是一个不同的主题:)
我将此机制用于后端进程的负载,但它还没有让我失望。