【问题标题】:Two instances of Diablo III inside one process? [closed]一个进程中有两个暗黑破坏神 III 实例? [关闭]
【发布时间】:2012-08-08 09:33:48
【问题描述】:

如果有可能(甚至从未实现过)在一个进程中启动暗黑破坏神 III 的两个实例,我正在徘徊。这是一道考试题:举个例子,当你可以使用线程或进程打开一个应用程序时,你选择进程。我回答如果我想打开两个暗黑破坏神III,我会使用进程,因为它更稳定。但是,教练说不可能通过线程启动暗黑破坏神III。我只是怀疑他的说法,为什么不可能?甚至不在虚拟机上?我认为至少在理论上应该是可行的。我们将不胜感激。

【问题讨论】:

  • 不,线程和进程是两个不同的东西。
  • 这不是我想要的。
  • 这与虚拟机无关。虚拟机对线程和进程的区别没有影响。关键是一个进程包含一个或多个线程,但像暗黑破坏神III这样的应用程序需要它自己的进程。您最初的答案是正确的(您将使用流程),但理由是错误的。这不是因为它“更稳定”,而是因为这是它唯一的工作方式。

标签: multithreading virtual-machine


【解决方案1】:

线程只存在于单个进程中。虽然您可以启动多个线程并分别等待一个进程,但这些进程本身将是完全独立的。

【讨论】:

  • 这不是我想要的。我明白你解释的事实。
  • 那么你不了解哪一部分?
  • 我将问题编辑为更多细节,也许您想再次查看。不过感谢您的回答。
  • 每个应用程序必须是一个单独的进程。这是无法改变的。
【解决方案2】:

暗黑破坏神III的一个实例是一个进程。一个进程不能在另一个进程中运行。一个进程可以产生另一个进程(并等待终止),但它们都将在不同的内存空间中运行。 “无法通过线程启动”没有任何意义。一个线程可以调用ProcessCreate之类的东西来启动一个进程;但这会在该进程中创建一个单独的进程和单独的线程。

【讨论】:

  • 非常感谢您的回答。如果我在一个进程中启动两个线程来调用 ProcessCreate() 并且这两个进程运行暗黑破坏神 III,它不是使用线程启动暗黑破坏神 III 吗?您在问题中看到,它询问我们可以使用线程和进程来启动两个应用程序的情况,我们选择进程。这里的语句:“一个进程不能在另一个进程中运行。”不太适合这里,因为任何应用程序都是一个过程,对吧?
猜你喜欢
  • 2020-10-27
  • 2012-07-12
  • 2011-12-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-09-26
  • 1970-01-01
  • 2013-12-28
相关资源
最近更新 更多