添加新线程时的堆栈行为

Stack behavior when adding new thread

本文关键字:堆栈 新线程 线程 添加      更新时间:2024-05-10

创建新线程时堆栈会发生什么?如果它在堆栈的顶部,那么它怎么会是线程呢?!如果它没有到达线程的顶部,那么程序如何知道在哪里继续它的工作?

每个线程都有自己的堆栈。因此,如果初始线程创建了第二个线程,那么这不会影响第一个线程的堆栈。第二个线程将有自己的堆栈。因此,在这个过程中,存在两个独立的堆栈——每个线程一个。但每个线程都只使用自己的线程。操作系统可以看到这两个线程,并在从一个线程切换到另一个线程时注意设置/使用正确的堆栈。