堆栈帧和执行帧有什么区别?

时间:2016-12-27 21:17:43

标签: python traceback inspect stackframe

我无法理解堆栈帧和执行帧之间的差异,主要是关于tracebackinspect模块(在Python 3中)。

我认为它们是相同的,但文档暗示它们不是inspect模块返回框架对象的方法,而traceback模块的方法不是(即inspect.stack() vs { {1}}。

从谷歌搜索,我知道堆栈帧是一个包含子程序状态信息(函数调用和参数数据)的数据结构。但是,根据文档,执行框架类似于:

  

执行框架包含一些管理信息(用于调试),确定在代码块执行完成后继续执行的位置和方式,并且(可能最重要的)定义两个名称空间,即本地名称空间和全局名称空间,这会影响代码块的执行。

那么堆栈帧和执行帧之间究竟有什么区别呢?

0 个答案:

没有答案