0

我一直在研究一些用于subprocess.checkoutput通过 ssh 在远程服务器上执行命令的代码:

   subprocess.check_output(['ssh', '-o', 'StrictHostKeyChecking=no',
        '-i', 'key.pem', self.pDNS,
        'python script.py', html.replace('&', '\&'), '"
        {0}"'.format(ua.random)], stderr=subprocess.STDOUT)

该命令由许多与不同服务器通信的线程运行,几乎没有共享资源,并且据我所知工作正常。

然而,在这段代码之上,我曾经curses为我编写了一个基本的 UI 来监控我的代码在做什么。我能够以类似于 VIM 或 EMACS 的方式使用键盘输入命令。但是,我注意到当我的代码执行上面的子进程行时,键盘输入变得非常不可靠和零星,需要多次重复按键才能在程序中注册。

这是因为子进程与threading库配合得很好吗?如果没有,有谁知道可能导致此问题的原因是什么?

4

0 回答 0