- 控制堆栈是运行时堆栈, 用于跟踪实时过程的激活, 即用于查找尚未完成执行的过程。
- 当它被调用(激活开始)时, 过程名称将被压入堆栈, 而当它返回(激活结束)时, 它将弹出。
- 激活记录用于管理过程的一次执行所需的信息。
- 调用过程时, 激活记录被推入堆栈, 当控件返回到调用者函数时, 弹出记录被弹出。
下图显示了激活记录的内容:
返回值:调用过程使用它来将值返回给调用过程。
实际参数:调用过程使用它为被调用过程提供参数。
控制链接:指向呼叫者的激活记录。
访问链接:用于引用保存在其他激活记录中的非本地数据。
已保存的机器状态:它保存有关在调用该过程之前机器状态的信息。
本地数据:它保存过程执行本地的数据。
临时值:它存储在表达式求值中产生的值。
评论前必须登录!
注册