【问题标题】:Running multiple instances of a program at one time c++一次运行程序的多个实例c ++
【发布时间】:2017-04-25 16:54:28
【问题描述】:

有什么方法可以在 c++ 中运行同一程序的多个实例?例如,假设您有一个简单的纸牌游戏,并且您想运行 3 次。类似于在 GUI 中单击“新游戏”按钮,它会打开一个可以玩的游戏实例,然后再次单击“新游戏”按钮,它会打开可以独立玩的游戏的另一个实例(另一个窗口)。

我想知道是否可以在控制台应用程序中执行类似的操作(比如一个带有更多面板的窗口或类似的东西?)。谢谢您的回复。

谢谢大家的回复,不过它应该可以在 Linux 或 Windows 上运行。这就是我询问的方式,例如,如果是这样的话,一个带有更多面板的窗口。就像,它应该能够同时玩 4 场比赛。如果只玩一个游戏,图形界面区域将只包含这个游戏(就像一个棋盘)。如果玩多于一种游戏,图形界面区域将被划分为 4 个图块,每个图块用于一局游戏(棋盘)。未使用的图块将不包含任何内容,并且可以在运行时更改已玩游戏的数量。在 GUIit 中不应该(猜测)那么难,但我仍然不确定 CLI 版本

【问题讨论】:

  • 有可能吗?是的。
  • 有可能。 int main(int argc, char** argv) 提供当前可执行路径。然后使用 system() 调用它。
  • 在 C++ 中没有开箱即用的东西,人们必须求助于操作系统特定的库来进行此类操作,即便如此它们也不一定特别容易做到(当然我不'我不是很了解自己..)我喜欢这个问题,所以我希望有人能更好地阐述这个问题,如果你问一个新问题,你会更具体地了解你想要开发哪个操作系统,也许你会得到更好的结果。为。
  • @mutex36 不会打开新的终端窗口吗?
  • 有一个CREATE_NEW_CONSOLE 标志。 msdn.microsoft.com/en-us/library/windows/desktop/…

标签: c++ console instances


【解决方案1】:

只需启动3个进程,例如:

for(int i = 0; i < 3; i++)
  system("path_to_your_program");

它在系统命令处理器(bash/cmd.exe/etc)中启动命令。 或者使用系统调用。

【讨论】:

    【解决方案2】:

    这取决于操作系统。目前几乎所有都支持多个进程,因此您只需运行程序 3 次。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-05-25
      • 2017-12-16
      • 1970-01-01
      • 2010-10-29
      • 2023-03-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多