问题标签 [stackunderflow]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
619 浏览

opengl - glPushName + glPopName 堆栈上溢和下溢

谁能解释我如何使用 glPushName 和 glPopName。我喜欢使用它们而不是 glLoadName,但我总是得到 GL_STACK_OVERFLOW 和 GL_STACK_UNDERFLOW 错误。(首先,下然后溢出)。

示例代码也会对我有所帮助。

注意#1:我的 Rendering/selection_rednering 代码由多个 glBegin(...)/glEnd() 块组成,如果这是任何问题加上各种旋转和变换。

注意#2:我知道 GL 选择/拾取已被弃用,但我必须在不久前使用 OpenGL2.1 开发的应用程序中实现它。

0 投票
9 回答
9256 浏览

actionscript-3 - 如何调试运行时堆栈下溢错误?

我真的很难解决我得到的堆栈下溢。我在运行时得到的回溯是:

这特别难以调试,因为当我在调试模式下运行时,它根本不会发生。它仅在编译为发行版时发生。

有人对如何调试堆栈下溢有任何提示吗?是否清楚地解释了这对 Flash 意味着什么?

如果有帮助,当我单击其处理程序进行 RPC 调用的按钮时会发生此错误,该调用使用 URLLoader、AsyncToken,然后调用与 AsyncToken 关联的一组 AsyncResponder 实例。通过一些服务器端日志记录以及一些入侵 swf 的日志记录,我知道 UrlLoader 正在成功执行并且 GET'ing crossdomain.xml 文件,正在正确处理它(即:如果我破坏它,我会获得安全性错误),并且也成功完成了“加载”请求(服务器发送数据)。下溢似乎发生在 Event.COMPLETE 侦听/处理过程中(当然,回溯也暗示了这一点)。

使用的 mxmlc = 来自 flex_sdk_4.5.0.20967

示例播放器(我尝试了一些)= 10.2.153.1


更新:我的具体问题已解决......但我将问题保留原样,因为我想知道如何普遍调试这样的问题,而不仅仅是获得我的具体解决方案。

在我的代码中,我有以下应用程序定义:

请注意,代码已/已附加到initialize事件。

InitData() 和相关定义是/是:

当我将 InitData() 调用切换到onCompletion事件而不是initialize(感谢 J_A_X!)时,问题完全消失了。似乎发生的事情是 Event.COMPLETE 事件处理程序(堆栈跟踪中的 onComplete)正在使用全局 SP 对象。发布(与调试)编译有关的某些内容一定会影响 SP 变量初始化的启动时间。稍后将处理程序移至onCompletion事件解决了所有问题。

如上所述,我仍然想知道有哪些技巧/工具可用于调试此类初始化问题。


更新 2:

applicationComplete似乎比creationComplete放置应用程序初始化代码更好。有关一些解释,请参阅此博客条目,以及Adob​​e Tech Evangelist 的此视频(大约 4:25),以获取简单的“应用程序启动”数据初始化示例。

0 投票
4 回答
17423 浏览

c++ - 在 C++ 中如何发生堆栈下溢?

在调用和从方法调用返回的情况下,什么是 C++ 中导致堆栈下溢的简单示例?

我熟悉调用约定,即thiscallstdcall以及cdecl他们清理堆栈的方式。编译器生成的代码不会自动处理堆栈下溢吗?

哪些情况会使我遇到堆栈下溢问题?

0 投票
1 回答
826 浏览

actionscript-3 - 为什么我在发布版本中出现堆栈下溢(错误 1024)?

我遇到了堆栈下溢错误这个奇怪的问题,它只发生在 Flex Builder 项目的发布版本中。我在网上四处寻找解决方案,但是虽然我找到了一些相关的帖子,但没有任何帮助。所以这是这个问题和我在答案中的解决方案,希望它可以帮助其他人。

问题:我将一个 java 程序(一个游戏)移植到 flex 中,它在 Android、web 和 Playbook 的调试模式下运行良好。但是,当我构建游戏的发布版本时,它崩溃了。根据 Adob​​e 的文档,报告的错误是 1024,即堆栈下溢。

起初,我认为问题仅限于 Playbook,但不,完全相同的问题发生在 Web 浏览器和 Android 的完全相同的位置。从我插入的调试信息中,我发现在调用另一个函数的过程中似乎抛出了异常。

0 投票
3 回答
550 浏览

postscript - 如何在 PostScript 中避免 stackunderflow(使用变量# of arguments)

我有一个带有两个变量的简单函数

我想让 var2 可选。但是,如果不提供 var2,则会导致 stackunderflow 错误。仅当堆栈不为空时,如何创建 if 语句以捕获 var2,并且如果堆栈为空,则可能分配默认值。

就像是

0 投票
1 回答
517 浏览

c++ - 使用喜欢的列表在堆栈中实现正确的(下溢保护)pop/peek 方法时遇到问题

好的,我正在尝试使用链表为我的 C++ 作业编写堆栈弹出方法。让我先告诉你节点和列表类,然后告诉你问题:

现在这里是堆栈:

现在问题出在 pop 和 peek 上,我只是觉得它们不方便。不应为 pop 和 peek 提供任何参数,但如果我这样做:

我不知道发生下溢时该怎么办。我不能只返回 -1 或 0 或类似的东西,因为这看起来好像我弹出了 -1 或 0(tos == -1 或 0) 有没有办法编写反下溢 pop/peek无需通过引用传递任何东西?

0 投票
1 回答
1893 浏览

python - 什么可能导致python中的块堆栈下溢?

应用程序上下文

我们正在使用“单独的”WebOb 开发一个实验性的 Web 框架。我们正在处理并发请求,它基本上是一个非常简单的 WebOb 集成。我们在 webfaction.com 上托管我们的应用程序

问题是我们的日志中出现了这个致命的 Python 错误:

没有其他追溯或信息。它使我们的应用程序崩溃(几分钟后它会自动重新启动)。我们在开发中从未遇到过这个问题。

编辑:我已经检查过了,我的 python 应用程序内存太高了,这可能是一个相关的问题

我试过的

问题是,当我尝试交叉引用访问日志时,没有任何内容与访问时间相对应。

正如我所说,没有关于错误的回溯或信息。

所以,我首先搜索了什么是 Python 中的块堆栈下溢,我发现了这篇非常有趣的文章:http ://tech.blog.aknin.name/2010/07/22/pythons-innards-interpreter-stacks/它解释了什么块堆栈下溢。

编辑:我还尝试删除所有 .pyc 并重新启动服务器。没有结果

问题

所以,这是我的问题:什么可能导致编译器中的块堆栈下溢?什么“类型”的代码会导致这种情况?

0 投票
2 回答
340 浏览

c - 在 C 中按指针堆栈,堆栈下溢除外

我通过使用指针实现了堆栈。它正在编译和工作,但当堆栈为空时它不会下溢。它给了我一些垃圾价值。我认为问题出在create_stack函数中。无论从堆栈中弹出多少数据,我都没有收到段错误,这很奇怪。

任何人都可以帮忙吗?

这是我通过指针对堆栈的完整实现。

0 投票
1 回答
456 浏览

string - 使用 Gforth 在多个字符串连接上堆栈下溢

Rosetta 代码中,我使用以下方法在 Forth 中连接字符串。

使用此代码,我希望能够将多个字符串连接在一起。但是,以下在 Gforth 上失败了

从我对 Forth 的基本了解中,我看到代码是将三个字符串放在堆栈上,然后将字符串附加到堆栈顶部并在其下方添加字符串,然后将新字符串再次附加到堆栈底部的字符串中。

为什么此代码在最后一个 + 位置下溢?有没有解决的办法?

0 投票
1 回答
35451 浏览

python - Python unpickling 堆栈下溢

我一直在开发一个 python 应用程序,其中客户端向服务器发送时钟信号,服务器用音频信号响应。
我有两个按钮,一个用于启动时钟,一个用于暂停曲目。

主班

客户端类

服务器类

这一切都很好,除了一个随机的时刻,当我改变暂停播放时,我不断收到这个错误:

这个问题可能是什么?