如何在linux上的新终端上执行新线程?

时间:2016-05-13 03:05:43

标签: c++ linux multithreading

我的问题是下一个..我在用c ++编程时遇到了问题。我有一个程序,我需要在新终端中执行一个线程,同时保持旧终端打开并与两个终端进行交互。 例如,在两个终端中独立地获取和打印变量。我不知道我是否有可能成为编程领域的新人。 谢谢你的帮助!

1 个答案:

答案 0 :(得分:1)

在任何给定时间,只有一个进程位于终端的前台,这是从标准输入读取的进程。

在诸如bash之类的shell中,您可以使用ctrl-z来停止当前的前台进程,然后您可以使用fg命令将它或其他进程带到前台。

以下是启动sleep命令,然后打开python交互式shell,然后以交互方式切换回sleep的示例:

$ sleep 10
^Z
[1]+  Stopped                 sleep 10
$ python
Python 3.5.0 (default, Jan 18 2016, 00:37:26)
[GCC 4.2.1 Compatible Apple LLVM 7.0.0 (clang-700.1.76)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>
^Z
[2]+  Stopped                 python
$ jobs
[1]-  Stopped                 sleep 10
[2]+  Stopped                 python
$ fg 1
sleep 10
$

如果这是您想要完成的事情,请查看this question以获取有关如何使用c执行此操作的信息。