2013-02-05 38 views
2

我发现这个链接:每个进程有多个堆栈?

one quick question about stack of thread and process

我明白为什么线程具有独立的堆栈,但我读的过程中可能有两个堆栈。为什么是这样?这是否可以是因为我们计算进程堆栈+线程堆栈?

+1

你从哪里阅读过有两个堆栈的进程?一个进程具有与线程相同数量的堆栈。 –

+0

@joachim。它在一些教程材料中提到,我在我的一个课程中学到了,但我并不完全理解其原因,是什么意思,所以我在看到另一个问题后问了这里。 – stian

+0

@dexter Joachim是对的:进程只是线程的容器,线程有一个栈。或者您是指特定的特定案例,操作系统或架构? –

回答

4

据解释有:

  • 一个进程可以有至少一个线程,但它可以有更多的
  • 一个线程只能有一个堆栈

所以,如果你说,“一个过程可以有两个堆栈”是部分正确的。 进程本身没有任何堆栈,但它的线程有-多达线程数。

相关问题